如何在提交文件之前查看文件的索引版本?

时间:2010-05-28 16:35:08

标签: git

我刚刚执行了git add --interactive,因此某些文件的索引版本与工作目录版本不同。我想要实际转储索引中每个文件的内容,而不是执行git diff --cached,但我找不到执行此操作的命令。我认为会有类似git show INDEX:filename...的东西,但“INDEX”不是有效的对象名称。

我能够git ls --cached,然后git show <hash>,但是应该有一种更简单的方法来查看你提交的内容。

2 个答案:

答案 0 :(得分:17)

是的,只是:

git show :filename

如果您有多个索引版本(例如在合并冲突情况下),您可以使用以下命令查看不同索引槽中的版本:

git show :1:filename
git show :2:filename
git show :3:filename

在大多数其他情况下,只填充插槽0,:0:filename是文件缓存版本的标识符。 :filename:0:filename的缩写。

答案 1 :(得分:3)

如果您想测试您在索引中隐藏的项目版本,则可以使用 git stash --keep-index(请参阅git-stash联机帮助页中的“测试部分提交”部分。

相关问题