我不知道git是否有修订概念。
我想将当前的工作副本与旧版本区分开来(不一定是最后一次提交)
如果可以在emacs中完成,那将会很棒。
答案 0 :(得分:5)
我不知道在emacs中这样做,但是:
git diff rev1..rev2
将为整个存储库执行您想要的操作。然后你可以添加到:
git diff rev1>..rev2 path
path可以是文件的绝对路径,也可以是目录的路径,因此您可以使用diff子树。
如果您想要区分工作副本 - 只需指定修订版1:
git diff rev1 path
修订代码可以是特殊名称,例如HEAD^..HEAD
表示最后一个当前或日志中的sha值。
答案 1 :(得分:0)
要在 Emacs 中执行此操作(使用 magit),您可以:
d
打开 diff
菜单r
选择要在差异中使用的提交范围。或者,您可以突出显示一系列提交,它们将被自动选中。如果您只想比较某些文件,您还可以使用 --
选项来选择将包含在 diff 中的文件。