如何在逃犯

时间:2016-08-02 16:07:31

标签: git vim gerrit vim-fugitive

某些内容已从我的存储库中的.c文件移动到.h文件,我想比较它们以确保新标头正确无误。这是Gerrit的评论,我假设使用Gerrit工具链并没有简单的方法。

我正在尝试在一个窗口中编辑.h文件和.c文件的旧版本。当我发出Gedit FETCH_HEAD:path/from/root/to/file.c时,始终会出现以下错误:E492: Not an editor command: Gedit FETCH_HEAD:path/from/root/to/file.c。我也尝试使用哈希命令。

我错过了什么?

2 个答案:

答案 0 :(得分:0)

使用“git show”命令获取要比较的文件/版本:

> git show version1:file1 > any_name_1
> git show version2:file2 > any_name_2

然后在gedit编辑器中打开文件或(更好)使用一些差异工具,例如KDiff3来查看两个文件/版本之间的差异。

> kdiff3 any_name_1 any_name_2

答案 1 :(得分:0)

只有当当前缓冲区由git控制或首次启动时vim位于git目录中时,才能使用填充命令。

在发出:Gedit命令之前,只需打开git存储库中的任何文件。

:e path/from/root/to/file.c
:Gedit FETCH_HEAD:%

注意:使用%表示当前文件。见:h c_%