博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
不同工具查看代码分支diff的差异
阅读量:6376 次
发布时间:2019-06-23

本文共 1137 字,大约阅读时间需要 3 分钟。

本文只是简单地讲述我自己在使用、,以及查看Git仓库的不同分支的diff上的经历。

Emacs

当使用Emacs时,我更喜欢用M-x package-install安装的提供的功能——magit-diff,而不是它自带的vc-dir。按下M-x,输入magit-diff并敲下回车后,Emacs会在minibuffer中等待用户输入要比较的分支。就像在shell中使用git-diff一样,只需要输入两个以..连接的分支名并敲下回车,就可以列出它们间的差异。如下图所示

上图是master与re两个分支间的差异。magit-diff会列出两个分支间不一致的文件,与直接使用git-diff命令没有不同。往下滚动跨过文件清单后,还可以查看单个文件的差异。如下图所示

Fork

第一次知道Fork是在知乎闲逛的时候,好像是在浏览“Mac下有什么值得推荐的软件”这类问题时看到的。某一次,为了能直观地查看两个commit间的差异,便试用了一番,效果确实不错。Fork的界面如下图所示

还记得,当时为了能够比较两个commit间的差异,我还在Fork的菜单栏中翻了很久——虽然是毫无收获。结果发现,原来只需要选中两个commit就可以了。如下图所示

图片两行蓝色的就是我选中的两个commit——先用鼠标点击其一,按住control键后再选中另一个即可。图片下方的部分与magit-diff差不多,应该也算是一目了然了。

Visual Studio Code

原本我觉得Fork已经足够好了,某一天在用VSCode时才忽然发现,在Fork中显示的代码差异,是没有语法高亮的。通常来说,即使没有语法高亮,查看短小的diff也不成问题。但如果差异的内容很多,或是diff位于一个很长的函数内部,这时光靠diff来做代码审查已经不太够了——因为不好确定在这片diff中出现的变量和函数,到底是不是正确地定义了的。

后来我发现,VSCode自带的“源代码管理”,即便是在查看diff时也是有语法高亮的——不仅有语法高亮,对于Node.js代码而言,还有ESLint的提示和“跳转到定义”的功能,awesome!不愧是全宇宙最好用的编辑器(笑

为了可以用VSCode来查看两个分支间的差异,放狗搜了一下,找到了神器。

安装GitLens后,VSCode的最左侧会多出一个菜单项,在其中可以方便地选择两个分支来进行比较。首先,找到一个要比较的分支,选择“Select for Compare”。如下图所示

再选中另一个要比较的分支,右键单击选择“Compare with Selected”,然后便可以在下方看到VSCode罗列出不一致的文件清单了。如下图所示

VSCode是最吼的!

全文完。

转载地址:http://uyxqa.baihongyu.com/

你可能感兴趣的文章
IOS设计模式的六大设计原则之迪米特法则(LOD,Law Of Demeter)
查看>>
c# 第27节 结构、枚举
查看>>
day35——memcache常用方法
查看>>
为什么实体类要实现序列化
查看>>
JVM的重排序
查看>>
某个时间为星期几
查看>>
01背包解题模板
查看>>
antd table 点击行触发radio 或 checkbox
查看>>
利用Adaboost提高分类性能
查看>>
tensorflow之损失函数
查看>>
CENTOS6.2系统日志rsyslog替换默认的日志服务syslog 转载自http://www.phpboy.net/linux/648.html...
查看>>
css3 炫酷下拉菜单
查看>>
前端存取cookie
查看>>
linux c笔记
查看>>
第四次作业
查看>>
angular 5的新特性
查看>>
tcp中设置连接超时
查看>>
java基础.1——String类
查看>>
html,css,javascript三者之间的相互关系是什么
查看>>
Educational Codeforces Round 48 (Rated for Div. 2) B 1016B Segment Occurrences (前缀和)
查看>>