小伙伴们大家好,今天接着来学习我们可爱的git.新来的小伙伴们记得点关注,查看前几章内容喔。我们学会了基本的代码提交技能,那么今天,我们还有来学习一个更实用的技能--分支。用过SVN的小伙伴们都知道,实用SVN真的是太蛋疼了,分支的管理简直是不忍直视。
何谓分支呢?概念性的东西呢我就不去赘述了,简单来说呢,就是可以将我们的工作任务分为不同的支线来进行管理的这么一种机制。就比如,当我们在日常开发过程中怕怕的写了几万行代码,那是一个痛快,但是妈的突然来了一个紧急需求要做,工作量也不小,这时你怎么做?二话不说就又开始啪啪啪写代码,嗯,几天功夫代码写完了,准备提交,尼玛,和之之前开发的代码混合在一起了,这可如何是好,难道要等都完成了再一起提交??如果你有过这样的苦恼,那么恭喜你,你又获得了解脱,如果你还是小白,那么更要恭喜你,你将不会遇到这样的烦恼了。
好了,说了这么多,怎么才能创建一个分支呢?git br 这个命令是专门用来进行分支管理的,首先,我们看看我现在拥有哪些分支:git br -a,可以看到,我的仓库里面有两个分支,一个本地分支master,一个与远程仓库关联的远程分支 origin/master,我们通过git clone下来的仓库都会默认创建这两个分支。远程分支使得我们可以与远程仓库保持同步,而master分支则是我们开发的主线分支。
先来看看我们的提交记录
嗯,没毛病,现在开始我们的开发之旅。。。。
xi
这不,刚写完一个函数,又让我去干其他东西,这时现在的开发任务只能先搁浅,怎么办呢,为了我们的代码不相互影响,这时我们就要用分支了。好,先提交我们刚刚写的代码
接下来创建一个分支用来开发我们的新任务:git co -b dev origin/master ,以我们的远程仓库的最新内容来创建一个分支,同样也可用git br dev origin/master来创建。其实呢 两个命令后面的 origin/master参数都可以不要,这样的话就是以我们当前分支 master的内容来创建新的分支,由于刚刚我在master分支提交了还未完成的工作,所以为了将我将要进行的开发与之前未完成的提交分离开来(这本来就是创建分支的目的)才这样做。git br -a 看下当前有哪些多分支:
可以看到多了一个分支,dev,细心的小伙可能会发现,之前git br -a的时候,看到的是 master是绿色的,现在变成了dev,b并且master之前的 * 在dev的前面了,是的,当执行命令git co -b的时候,git 会先我们创建一个分支,然后再切换到我们新创建的分支。而git br 则是仅仅为我们创建了一个分支,如果要切换到新创建的分支,则要执行 git co 分支名,来进行切换。好,来对比一下我们三个分支(master,远程分支 origin/master,dev)的内容:
master
dev
origin/master
可以看到,和我们的预期是完全一样的,这时,你就可以像在主线分支 master一样进行新的开发之旅啦.
顺说一下,删除本地分支 使用 git br -d,这是有警告提示的,如果要删除的分支有未同步的内容,则git 会发出警告提示并且不删除分支。而使用 git br -D则会忽略警告,强制删除分支,使用时小伙伴们要多多留意喔。好了,今天的内容就到这里。感谢阅读,下一章节将继续讲解如何在新的分支同步远程仓库代码等内容。