如何在git中区分具有特定修订的文件?

时间:2012-07-05 09:32:32

标签: git diff revision magit

我不知道git是否有修订概念。

我想将当前的工作副本与旧版本区分开来(不一定是最后一次提交)

如果可以在emacs中完成,那将会很棒。

2 个答案:

答案 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),您可以:

  1. 从 magit 缓冲区按 d 打开 diff 菜单
  2. r 选择要在差异中使用的提交范围。或者,您可以突出显示一系列提交,它们将被自动选中。

如果您只想比较某些文件,您还可以使用 -- 选项来选择将包含在 diff 中的文件。