一、常用命令
1.创建版本库
git clone <url> #克隆远程分支
git init #初始化本地版本库
//补充:
git clone -b 分支名 <url> #Git克隆指定分支
git clone -b 分支名 <url> c:/User/zp/dev指定目录 #Git克隆指定分支、指定目录
2.分支管理
git branch #查看分支
git branch <name> #创建分支
git checkout <name>或者git switch <name> #切换分支
git checkout -b <name>或者git switch -c <name> #创建+切换分支
git merge <name> #合并某分支到当前分支
git branch -d <name> #删除本地分支
git push origin --delete <name> #删除远程分支
git remote -v #查看一下当前项目链接的远程仓库地址
git branch --set-upstream-to=origin/remote_branch your_branch #本地关联远程分支。origin/remote_branch是你本地分支对应的远程分支;your_branch是你当前的本地分支
git branch --set-upstream branch-name origin/branch-name
3.相关配置
git help git --help
git help git -a
git help clone 或者 git clone --help
git config --list
git config --global user.name "你的用户名"
git config --global user.email 你的邮箱
二、查看
1、查看日志
git log --graph --pretty=oneline
2、查看本地分支和远程分支的跟踪关系
$ git branch -vv
develop 08775f9 [origin/develop] develop
feature_1 b41865d [origin/feature_1] feature_1
* master 1399706 [my_github/master] init commit
三、演示
例如:Git创建远程分支
//1、新建一个本地分支,并切换到新分支
git checkout -b localbranch
git branch
//2、把新建的本地分支push到远程服务器,远程分支与本地分支同名(当然可以随意起名)
git push origin localbranch:localbranch
git branch -a
//3、删除远程分支
git push origin :localbranch
或
git push origin --delete localbranch
//4、删除本地分支
git checkout master
git branch -d localbranch //合并完成后,就可以放心地删除dev分支了
git branch -D localbranch //在不检查merge状态的情况下删除分支
四、分支暂存功能
现有分支:master、dev、branch1。
例如:程序员A在branch1分支开发一个注册功能,突然接到了boss的紧急需求。在不丢失当前代码的情况下,开发新来的紧急需求。
1、A需要在branch1分支下暂存代码,即git stash。可使用git stash list查看
2、A切换分支,git checkout dev
3、A新建branch2分支并切换,git checkout -b branch2,
[4、此步骤可省略git push origin branch2:branch2]
5、A在branch2分支把需求开发完成,提交 git commit -a -m "branch2 over"
6、切换到dev分支,合并branch2分支 git merge --no-ff -m "merge branch2 branch" branch2
7、删除branch2本地分支:git branch -d branch2 [删除远程分支:git push origin :branch2]
8、切换到branch1分支后继续开发注册功能 git checkout branch1
9、从暂存区之中进行恢复,git stash pop 或 [git stash apply git stash drop]
10、开发完成,删除branch1分支,并合并到dev分支
参考:
https://segmentfault.com/a/1190000020023683
https://segmentfault.com/a/1190000016755475