zoukankan      html  css  js  c++  java
  • git安装以及应用

    1、安装完成后,设置用户信息:
    $ git config --global user.name "wangfg"
    $ git config --global user.email "wangfg@example.com"

    2、创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
    $ cd /F
    $ mkdir learngit
    $ cd learngit

    3、通过git init命令把这个目录变成Git可以管理的仓库:
    $ git init

    4、git的常用命令

    1)添加/修改:
    $ git add readme.txt
    $ git commit -m "wrote a readme file"

    2)状态查看:(可以让我们时刻掌握仓库当前的状态,如:有没有准备提交的修改等。)
    $ git status

    3)查看具体修改内容:
    $ git diff readme.txt

    4)查看历史记录:
    $ git log

    如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数:
    $ git log --pretty=oneline

    5)版本回退:(首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交,如:1094adb,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。)
    如把当前版本回退到上一版本:
    $ git reset --hard HEAD^

    或者从上一版本返回最新版本:
    $ git reset --hard 1094adb(最新版本id)

    6)查看每一次操作命令以及版本号
    $ git reflog

    7)撤销修改
    为使用git add时:
    $ git checkout -- readme.txt
    使用git add 后:
    $ git reset HEAD readme.txt (先回退到当前版本)
    $ git checkout -- readme.txt (再回退到工作区)

    8)删除:
    $ git rm readme.txt
    $ git commit -m 'delete readme.txt file'


    9)结合github创建远程仓库
    第1步:创建SSH Key。
    $ ssh-keygen -t rsa -C "youremail@example.com"
    创建成功后在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件

    第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
    然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

    10)登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:
    如输入:learngit,其他选择默认

    11)创建远程仓库(origin 远程库的名字)
    $ git remote add origin git@github.com:ap0810231/learngit.git


    12)把本地库的所有内容推送到远程库上:
    第一次:
    $ git push -u origin master
    此后可以使用命令:
    $ git push origin master


    13)从远程库克隆一个本地库:
    $ git clone git@github.com:ap0810231/learngit.git

    14)创建dev分支,然后切换到dev分支:
    $ git checkout -b dev

    或者使用
    $ git branch dev 创建分支
    $ git checkout dev 切换分支

    15)用git branch命令查看当前所有分支:
    $ git branch

    16)合并指定分支到当前分支:
    $ git merge dev

    $ git merge --no-ff -m "merge with no-ff" dev
    (备注:合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。)

    17)删除分支
    $ git branch -d dev

    18)当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场:
    当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是当前正在dev上进行的工作还没有提交:
    可以使用git stash保存当前工作现场:
    $ git stash
    然后在master下创建分支bug-101:
    $ git checkout master
    $ git checkout -b bug-101
    修复完bug-101的bug之后合并到master:
    $ git merge -no-ff -m'fixed bug' bug-101
    完成修复bug后回到之前工作现场:
    $ git checkout dev
    查看刚才的工作现场存到哪去了?用git stash list命令看看:
    $ git stash list
    用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
    另一种方式是用git stash pop,恢复的同时把stash内容也删了:
    $ git stash pop

    19)查看远程库的信息
    $ git remote

    20)查看推送抓取路径
    $ git remote -v

    21)将本地分支推送到远程分支
    $ git push origin dev

    查看远程库信息,使用git remote -v;

    本地新建的分支如果不推送到远程,对其他人就是不可见的;

    从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

    在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

    建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

    从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

  • 相关阅读:
    不用递归实现List转Tree
    spring cloud stream 局部异常和全局异常混乱
    HTTP协议详解(真的很经典)
    Python3 多线程压测接口数据:写入到influxdb:通过grafana展示
    Eclipse使用git最简易流程
    oracle patch包一定要775的权限
    安装19c grid时CRS-1705错误
    Ubutun 设置开机启动程序
    利用selenium将edge浏览器里面的网页保存为pdf
    Ruckus ICX7150 Switch License Upgrade from 1G to 10G
  • 原文地址:https://www.cnblogs.com/wangfg/p/9180210.html
Copyright © 2011-2022 走看看