本Git系列内容更多是基于廖雪峰老师的Git教程的个人笔记、总结和扩展,如有错误,请多多指正。
在上一节中,我们随着版本的一次次提交,Git像是一条时间线一样在不断延长,而我们现在在编辑提交的分支叫做 主分支, 即master
分支。HEAD
严格来说不是指向提交,而是指向master
,master
才是指向提交,所以,HEAD
指向的就是当前分支。
我们可以创建一个新的分支dev
,并切换这个分支。
$ git checkout -b dev
Switched to a new branch 'dev'
git checkout
加上-b
参数表示创建并切换,相当于以下两条命令
$ git branch dev
$ git checkout dev
Switched to a new branch 'dev'
然后就可以使用git branch
命令查看当前分支
$ git branch
* dev
master
git brach
命令会列出所有分支,并且在当前分支前加上*
我们现在就可以在这个新分支上提交内容,在这里我们修改之前创建的1.txt
// 之前的内容
hello git
hello world
hello windows
//修改之后的内容
hello git
hello world
hello windows
hello
hello
hello
hello
提交修改之后的1.txt
$ git add 1.txt
$ git commit -m '1.txt_v4.0'
[dev 13925d5] 1.txt_v4.0
1 file changed, 5 insertions(+), 1 deletion(-)
这时候如果我们切换回原先的分支
$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 4 commits.
(use "git push" to publish your local commits)
我们再打开1.txt
hello git
hello world
hello windows
会发现之前提交的修改全部消失了,因为之前的提交是在dev
分支上,而master
分支上并没有提交。
现在我们可以把dev
分支和master
分支合并
$ git merge dev
Merge made by the 'recursive' strategy.
1.txt | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
git merge
命令用于合并指定分支到当前分支
我们现在可以打开1.txt
hello git
hello world
hello windows
hello
hello
hello
hello
内容已经与dev
分支提交的内容一致,合并完成之后就可以删除掉dev
分支
$ git branch -d dev
Deleted branch dev (was 13925d5).
git branch
添加-d
参数表示删除指定分支,最后查看branch
$ git branch
* master
就只剩下master
分支
网友评论