基础的一些命令不用说了 如果遇到项目多 项目管理要求严格 并且多个开发人员共同开发同一项目时 需要注意的点比较多。

1.merge合并

我们都知道 比如有一个dev开发分支跟release上线分支 如果想要将dev上的代码合并到release上 直接 merge dev即可。但如果在开发dev分支的同时 有另一个紧急需求需要上线  这时我们便得另外切出一个新分支进行开发 这里我们将新分支命名为feature/newDev:切换到release上进行git checkout -b feature/newDev便自动创建并切换完成 在开发完成之后进行release合并完成上线。

之后我们还得需要开发dev分支 但已经上线了一个版本 所以dev分支上的代码不是最新的 与release上的不同步 如果还是按照以往进行merge命令合并 我们的commit将会被打乱  后期如果出现问题  不利于查看 排查问题。

git rebase release。这个命令解决了这个问题  在开发dev的时候会将release最新的代码合并过去 在最新的代码基础上开发原有的功能

2.commit合并

我们在某一分支上开发代码时 可能需求比较多  开发的东西比较多 每开发一个都得保存提交  并且每一次都会进行一次commit添加注释 这时候我们上线的时候 如果合并到master主分支上  会看到很多commit注释 可能就是简单开发某一模块 但提交了许多次代码 看上去不直观 我们需要的是一个需求一个commit 也就是commit合并。

git rebase -i (id) 这个命令便是合并 id是我们需要合并到哪一次提交的id 比如线上最新的提交为:首页开发(*******) 括号内星号是我们的提交id  但我们的开发分支在最新的提交基础上增加了很多commit:首页开发(*******)B开发(*******)C开发(*******) D开发(*******) 所以我们需要的是将BCD提交合并 这时候直接git rebase -i (首页开发的id)即可。

3.代码review

在我们开发完成某一功能 准备上线的时候  一般都需要代码review 防止线上出现问题 又或者忘了删除一些冗余代码。

一般项目上线都会打包tag 也就是版本号 所以我们每次的开发都会有一个版本号 所以我们对比版本号进行代码review即可 比如1.0.0跟1.1.0 可以直接使用命令git diff 1.0.0...1.1.0即可。

4.储藏改动

有时候我们在修改代码的时候 修改完发现用错分支 比如原先应该在开发分支上修改 但由于忘了切换直接在master做的修改 这时候可以将修改的代码存储起来 使用命令git stash 然后切换到dev分支上 再将存储的代码弹出来 使用命令git stash pop即可。

stash的原理:
将本地没提交的内容(git commit的内容不会被缓存 但git add的内容会被缓存)进行缓存并从当前分支移除,缓存的数据结合为堆栈,先进后出。

 


永远年轻,永远热泪盈眶。