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

Law*_*den 7 git

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

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

CB *_*ley 17

是的,只是:

git show :filename
Run Code Online (Sandbox Code Playgroud)

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

git show :1:filename
git show :2:filename
git show :3:filename
Run Code Online (Sandbox Code Playgroud)

在大多数其他情况下,仅填充插槽0,并且:0:filename是文件的高速缓存版本的标识符.:filename是一个简写:0:filename.