前文为大家讲解了如何创建本地仓库、提交代码等git基本指令,下面为大家讲一些分支上的东西,结合代码和图来看。
讲这些之前,先给大家讲一下如何回退版本吧,插播一个小知识,非常简单,下面我们来结合例子为大家讲解。
版本回退:
适用场景:
可能开发过程中开发了些许功能,但是忽然发现这部分功能直接砍掉了,那么自己手动删除代码又觉得麻烦,这时候就可以使用版本回退的功能了。
首先进入到项目目录:
git log
查看提交记录
如图 可以看到有三次提交记录,这时候我们先看代码是如何的
可以看到有三次记录。
那么现在我们回退到上一次提交记录,也就是取消test2方法。
好了 ,话不多说 动手,进入到项目目录下,敲下如下指令
git reset --hard HEAD^
然后可以看到提示已经回到了上一个记录版本,下面我们来看代码
这时候是不是发现“新增test2方法部分的代码已经不见了呢”。
这时候万一脑子抽风了,觉得又要重新回退到刚刚的版本呢,那么刚如何处理呢,不急,我们还有办法。
敲下指令:git reflog (查看所有历史记录,拿到你想要记录的commitid 也就是红圈圈起来的地方)
接下来试着敲下命令:
git reset --hard 5d930d0
提示又回到了“新增teset2方法”的记录版本。
接下来再看看项目代码
是不是很神奇呢。好了版本回退就给大家介绍到这个地方。
接下来开始讲本节的重点,分支创建、合并、删除等指令。
使用场景:
开发的时候需要单独开辟一条分支dev,这时候开发者们可以在这条支线上进行开发,当开发完毕的时候,合并到朱支线master,这样既不影响之前的发布版本,还能在开发完成之后,重新合并到发布版本上。
第一步:
开启分支:
git checkout -b dev
或者:
git branch dev
git checkout dev
这样就开启了dev的分支
这时候我们来看下当前分支,show一下
发现这时候除了主分支master之外 多出了一个dev的分支 并且HEAD指针指向了这个dev分支,接下来 我们改动代码并且提交到dev的缓存区
这时候我们在分支dev上做了代码的修改 并且提交到了dev分支的缓存区。
然后我们来做个测试,我们切回主分支master,
git checkout master
你会发现
项目中新增的代码不翼而飞,这是因为我们是在分支dev上做的修改并且提交到了dev的缓存区,这时候我们切回主分支的时候 在其他分支做的修改肯定不会出现在我们的master区中。
那么我们如何让在分支dev中修改的代码出现在master主分支中呢,
我们敲下如下命令
git merge dev
又重新出现了 神奇的一批。
好了我们这时候一起提交到远程仓库吧
git push origin master
大功告成了