GIT的分支有什么用呢?其实就是平行开发,如果在两条分支上分别开发各自的功能,等两条分支一合并,这两个功能也就完成了。

我们之前一直提交代码的版本库就是master分支,创建一条分支就是和master类似的,但是会是在上面开发别的需求的dev的分支,名字可以叫做dev分支,也可以叫别的。在实际开发的过程中,采用的是敏捷开发的迭代功能。就是不断创建分支,然后进行迭代合并的功能,对产品的需求进行不断的增加和调优。

创建分支


我们以及知道,在开发的时候,master是我们的主线,我们可以创建一条新的分支进行别的功能的开发,然后master如果有需求也是可以继续开发的,创建分支的命令如下:

$ git checkout -b dev //创建并切换分支<span class="string">

相当于两条下面的命令,创建分支,切换分支:

$ git branch dev //创建分支
$ git checkout dev //切换分支<span class="string">

 

合并分支


如果dev的功能开发好了,要和master的主线合并了,那么,我们就用下面的命令:

$ git checkout master //切换回master
$ git merge dev //合并分支
$ git branch -d dev //删除分支,如果没有需要也可以不用删除

 

分支管理


通常情况下,GIT的合并会默认使用fast forward的模式,这种模式下,删除分支会丢掉分支的信息,我们可以使用 --no-ff参数来采用普通模式的合并:

$ git merge --no-ff -m "dev merge master with no-ff" dev

开发小贴士:一般master分支是比较稳定的,我们程序员一般都会在dev上面干活,然后采用merge的形式进行合并。

暂存区的使用


在软件开发中,很多时候都会要求你停下手头的活去处理别的事情,那么,我们的代码写到一半,commit不了,怎么办呢?这个时候GIT会提供一个暂时储存的功能,是你的代码暂时放在安全的区域,等你的紧急任务,比如紧急Bug修复完成之后再来切回来继续手头的工作,具体代码如下:

$ git add . //现在在dev分支,代码添加文件到暂存区,但是没有commit
$ git stash //把代码暂存起来
$ git checkout master //切回主线
$ git checkout -b EmergencyIssue //创建分支修改EmergencyIssue
//After one hour...... EmergencyIssue fixed.
$ git checkout master //修改好之后切回主线
$ git merge --no-ff -m "merged bug fix EmergencyIssue" iEmergencyIssue //分支合并
$ git branch -d EmergencyIssue //删除分支
$ git checkout dev //切回dev的分支
$ git status //查看状态,但是发现什么都没有
$ git stash list //可以看到暂存区存起来的list
  stash@{0}: WIP on dev: 888888 add merge
$ git stash pop //恢复stash后并删除stash的内容
$ git stash list

其实, git stash pop相当于下面两条命令:

$ git stash apply //恢复stash的内容

$ git stash drop //删除stash的内容 我们可以多次用git stash来把内容存起来,只要用git stash apply加上指定的stash就可以恢复了

$ git stash apply stash@{0}

本文内容来自:git创建分支,git合并分支,git分支管理以及git暂存区的使用 – Break易站


---Author: Arvin Chen   ---Web Address: www.breakyizhan.com  (Break易站)

 
转载请保留页面地址:https://www.breakyizhan.com/git/226.html
扫描二维码添加微信 
  • ,每次淘宝领取淘宝优惠券,淘宝购物更优惠。现在添加微信,还可以领取机械键盘50元优惠券!添加微信后回复机械键盘即可领取!
    支持我们,就用微信淘宝!