git在编辑器中显示文件的旧版本



我发现我可以使用"git log filename"来显示文件的旧版本以显示提交,然后使用"git-show commit id:filename"来显示旧版本。但它只会减少投入。

我希望能够在emacs中查看这一点,这样我就可以按照习惯进行导航,并且可以突出显示语法。我发现我无法将git core.pager设置为emacs,因为emacs无法从stdin读取。

有人知道我是怎么做到的吗?或者你有其他检查旧版本文件的好方法吗?

只需使用>并将其放入可以在emacs中打开的文件中。

git show commit-id:filename > oldfile

然后在emacs中打开该文件。

如果使用bash,则可以使用流程替换。

gvim <(git show commit-id:filename)

使用以下Vim命令,可以查看文件的早期版本,而不必在之后清理任何内容。

 git show commit-id:filename | vim - -n

解释:vim命令的dash参数使vim加载来自标准输入的任何内容。-n选项禁止创建交换文件。

Emacs包git timemachine允许您在文件的git修订中来回走动:

https://github.com/pidu/git-timemachine

最新更新