git--创建与合并分支

首先,我们创建dev分支,然后切换到dev分支:

1  $ git checkout -b dev
2  Switched to a new branch 'dev'

git checkout 命令加上 -b 参数表示创建并切换,相当于一下两条命令

$ git branch dev
$ git checkout dev
Switched to branch 'dev'

 然后用 git branch命令查看当前分支:

1 $ git branch
2 * dev 
3    master

git branch命令会列出所有分支,当前分支前面会标一个 *

 然后我们就可以在dev分支上正常提交,比如对readme.txt做个修改,加上一行:

Creating a new branch is quick.

然后提交

$ git add readme.txt
$ git commit -m "branch test"

现在,dev分支的工作完成,我们就可以切回master分支:

$ git checkout master
Switched to branch 'master'

切换回master分支后,再查看一个readme.txt文件,刚才添加的内容不见了,因为刚才提交的是在dev分支上的,而master分支此刻的提交点并没有变。

接着我们把dev分支的工作成果合并到master分支上:

$ git merge dev
Updating d46f35e..b17d20e
Fast-forward
 readme.txt | 1 +
 1 file changed, 1 insertion(+)

git merge 命令用于合并指定分支到当前分支,合并后,再查看 readme.txt 的内容,就可以看到和dev分支的最新提交是完全一样的。

注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。

当然也不是每次合并都能Fast-forward,我们后面会讲其他方式的合并。

合并完成后,我们就可以放心的删除dev分支了。

$ git branch -d dev
Deleted branch dev (was b17d20e).

删除后,查看branch,就只剩下master分支了。

$ git branch
* master

switch

我们注意到切换分支使用 git checkout <branch>,而前面讲过的撤销修改则是 git checkout -- <file>,同一个命令,有两种作用,确实有点另人模糊。

实际上切换分支这个动作,用switch更科学。因此新版本git 提供了新的 git switch命令来切换分支:

创建并切换到新的dev分支,可以使用:

$ git switch -c dev

直接切换到已有的master分支,可以使用:

$ git switch master

使用新的git switch命令,比git checkout 更容易理解。

小结

Git鼓励大量使用分支:

查看分支: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>

 

posted @ 2020-08-12 10:54  进击的小尧好程序员  阅读(193)  评论(0编辑  收藏  举报