极简idea下git操作(二)

这篇讲些git的高级应用,如分支操作,版本回退,bug修复流程等

新建分支

一般开发中,我们不会直接改master分支,而是基于master分支建一个dev分支,我们可以通过点击下图按钮来基于master建新分支,需要注意的是master不能是本地当前分支,不然不会出菜单,并且代码要是最新的,不然新分支的代码也是老的

 合并分支

等我们开发完功能,需要合并分支到master上了,我们先切换分支到master

在选中dev,点击Merge into Current,就能把dev分支合并到master分支上了

 

删除分支 

删除分支很简单,选中要删除的分支点击Delete就行了,需要注意的是只能删除非当前分支,下图只是删了本地分支,要删远程分支是点击Remote Branches下面的分支再delete

 版本回退

有时候我们提交错了代码,需要回退代码,该怎么操作呢?

点击下面的Version Control-Log菜单可以看到提交的记录

 点击要回退的版本,比如我要回退到版本1,右击然后选择Reset Current Branch to Here,就能回退版本了,回退的时候会让你选Mixed或者Hard,Mixed的意思是版本回退了,但是本地的文件不会回退,Hard的意思是本地文件和版本都回退,这时如果你的版本2已经提交到远程仓库,push的时候就会有冲突,只能使用强制提交,强制提交的意思是本地仓库覆盖远程仓库

git push -f origin dev

 

 修复线上bug流程

当你开发完项目,成功上线后,就要开始下个阶段的开发了,这时线上突然来bug了,你当前分支刚开发了一半,又不能提交,该怎么处理呢?

1.stash当前的工作,会把你当前分支上的改动保存到一个临时空间中

 2.基于master新建一个bugfix分支用来修复线上bug

3.提交该分支,并合并到master分支上

新建分支,合并分支上面都讲了,这里就不重复了,接下来重点来了,master上的bug,dev分支上也会存在,如何把这次提交也合并到dev分支上呢?

我们切换到dev分支,在git的log里面找到修复bug的提交,选中cherry-pick就能把这次提交合并到dev上面去,当然也支持多选合并

 合并完成后选择unStash Changes就能恢复之前开发一半的代码了,恢复可能会有冲突,至于怎么解决上面都有说明,就不展开了


版权声明:本文为ting4937原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。