Git_5_分支管理

本Git系列内容更多是基于廖雪峰老师的Git教程的个人笔记、总结和扩展,如有错误,请多多指正。

在上一节中,我们随着版本的一次次提交,Git像是一条时间线一样在不断延长,而我们现在在编辑提交的分支叫做 主分支, 即master分支。HEAD严格来说不是指向提交,而是指向mastermaster才是指向提交,所以,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分支

你可能感兴趣的:(Git_5_分支管理)