本节介绍分支的一些具体应用实例。
1.Bug分支
设想我们正在分支dev上工作,突然接到一个修复bug的命令,我们需要创建分支issue-101来修复它,在此之前我们肯定需要先保存我们当前未完成的工作,命令git stash可以帮助我们安全地储
藏当前的分支,当我们完成bug的修复需要回到dev上继续工作时,我们首先切换到dev分支上,然后有两种方式恢复dev的工作内容,第一种是git stash apply,但是恢复后,stash内容并不删
除,我们还需要用git stash drop
来删除;另一种方式是用git stash pop
,恢复的同时也会把stash的内容删除。
2.Feature分支
开发软件的过程中,总会有新的功能添加进来。添加一个新功能时,我们肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面
开发,完成后合并到master,最后再删除该feature分支。
假如我们现在新建一个分支feature-vulcan,开发完毕后用add+commit提交到本地库,现在我们回到dev准备合并,突然接到命令取消当前开发,我们需要就地删除分支feature-vulcan,使用命令
git branch -d feature-vulcan即可,如果失败我们可以用git branch -D feature-vulcan强制删除。
3.多人协作
当我们从远程仓库克隆时,实际上Git自动把本地的master
分支和远程的master
分支对应起来了,并且,远程仓库的默认名称是origin(非常便捷无需自己动手)
。
我们可以用命令git remote 或 git remote -v来查看远程库的相关信息(后者更详细)。
4.推送分支
推送分支,就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,这样,Git就会把该分支推送到远程库对应的远程分支上:比如说命令git push origin master可以把本地
master本地分支推送到远程origin分支上,而命令git push origin dev就是把分支dev上的内容推送到origin。
5.抓取分支
多人协作时,大家都会往远程的master
和dev
分支上推送各自的修改。我们可以用命令git clone git@github.com:michaelliao/learngit.git从远程库克隆,然后我们准备在分支dev上开发,我们就需
要先在本地创建一个dev分支与远程origin下的dev分支对应起来,命令git checkout -b dev origin/dev就可以帮我们做到,现在我们就可以在本地dev上修改,然后实时与远程dev保持同步。
但是如果刚刚有一个队友推送了新的dev,我们恰好也准备推送,这时git会提示操作失败。我们需要先用git pull把最新的dev抓取到本地,在上面进行修改合并,然后才能继续push到远程。注意
这里我们需要保证本地的dev与远程的origin/dev实现正常的链接。
下一节我们=进入标签管理。
原文地址:https://www.cnblogs.com/notegeek/p/8574466.html