2011-01-09 95 views
113

我錯誤地使用命令「git add dir」添加了文件。我還沒有運行「混帳提交」。有沒有辦法從提交中刪除該目錄以及其中包含的所有內容?我試過git reset dir,但它沒有工作。顯然git reset file是撤消它的方法。但是我有很多文件和很短的時間。撤消「git add <dir>」?

+3

`git reset `更新該路徑的索引,以便它匹配`HEAD`(當前提交)。它不會觸摸工作樹。 – Cascabel 2011-01-09 14:56:49

回答

182

若要從索引中刪除一個目錄,裏面的一切吧,

git rm --cached -r dir

--cached開關使得git rm OPE僅在索引上的費率,而不會觸及工作副本。 -r開關使其遞歸。

+0

這個命令爲我工作。謝謝。 – neoneye 2011-01-09 12:33:41

14

你將要使用git rm --cached -r <dir>。該命令將從索引中刪除暫存的目錄內容。

如果該目錄已經跟蹤你必須手動找到新的和舊文件和unstage他們...

可能運行後git reset <dir>重置現有的(並且已經跟蹤)文件的目錄內

+0

這工作對我來說 – 2017-04-04 16:07:26