如今很多开发小伙伴都在使用IntelliJ IDEA 进行开发,这个工具上有很多的功能,帮助我们开发,达到事半功倍的效果。
走起!
使用IDEA合并代码
除了使用git bash或者在IDEA的终端敲git命令以外,IDEA上有自带的工具帮助我们合并代码:
单个提交更新到其他分支用cherry-pick
举例:master上提交了一次代码,想合并到poc分支,由于master和poc的差异比较大了,直接pull会把很多不需要的代码合并过来,甚至是覆盖poc自己的代码,所以cherry-pick就很有用。
首先在IDEA下方log页签里找到那一条提交,不好找的话也可以在提交历史里,右键选择“Select in Git Log”,可快速跳转到Log页签里的对应行上。
切换到poc分支,右键,选择"Cherry-Pick",
代码会立马在poc分支本地仓库里生效,接下来会弹出框,push到poc分支远程仓库:
整体从别的分支拉取
举例:为了开发某个功能,前几天从master拉了个新分支,现在开发完成,测试没问题后想合并到master分支。
首先到子分支,把代码更新成最新,然后切换为master分支,选择Git->pull,在Branches to merge 里,勾选子分支,点击Pull
由于master分支上近期没有对这部门功能做改动,所以使用这个方法基本上不会有冲突。
比较同一个文件在不同分支上的代码、从别的分支更新过来
举例:master分支上功能没问题,而子分支部署成服务就有问题,我想比较一下两个分支上的代码到底有何区别:
切换到子分支,右键Git->Compare with Branch,选择master分支
如图所示,左侧的是master分支,右侧是子分支,两个分支上有多少不同一目了然,而且也用颜色进行了区分。
如果有想从master合并到子分支上的提交,点击向右小箭头即可,但是更新后一定记得push才能提交到远程仓库。
使用IDEA比较文件
个人认为使用IDEA比较文件比常见的Beyond Compare、线上对比工具更好用
举例:想要比较两个文档有什么区别(我经常复制两个要比较的文档到IDEA里),在其中一个文档上右键,点击Compare With,弹出框里选择另一个文档:
如图所示,两个分支上有多少不同一目了然,而且也用颜色进行了区分,点击左箭头或右箭头可以随意更新左侧文件或右侧文件,很好用。