我剛剛執行了git add --interactive
,因此某些文件的索引版本與工作目錄版本不同。而不是在做git diff --cached
,我想實際轉儲索引中每個文件的內容,但是我找不到執行該操作的命令。我應該認爲會有類似git show INDEX:filename...
的內容,但「INDEX」不是有效的對象名稱。如何在提交之前查看文件的索引版本?
我能夠做git ls --cached
,然後git show <hash>
,但應該有一個更直接的方法來看看你正在提交。
我剛剛執行了git add --interactive
,因此某些文件的索引版本與工作目錄版本不同。而不是在做git diff --cached
,我想實際轉儲索引中每個文件的內容,但是我找不到執行該操作的命令。我應該認爲會有類似git show INDEX:filename...
的內容,但「INDEX」不是有效的對象名稱。如何在提交之前查看文件的索引版本?
我能夠做git ls --cached
,然後git show <hash>
,但應該有一個更直接的方法來看看你正在提交。
是,簡單地說:
git show :filename
如果你有多個指數的版本(如合併衝突的情況),您可以查看與不同指數中的時隙版本:
git show :1:filename
git show :2:filename
git show :3:filename
在其他多數只填充0號插槽的情況,:0:filename
是文件緩存版本的標識符。 :filename
是:0:filename
的簡寫。
如果你想測試您在指數已經藏匿項目的版本,你可以使用 git stash --keep-index
(見「測試部分提交」在git-stash手冊頁部分)。
爲什麼不試試git gui? – corroded 2010-05-28 16:36:51