2016-06-30 145 views
0

這與Remove files from Git commit不一樣,因爲所有的答案在這種情況下都不起作用。 所以這裏是問題,從上次git commit中刪除文件

git commit之前,我們使用git add。問題是當我們在做git add時,有時候我們忘了檢查,只有在做git commit的時候我們才意識到那些文件不應該被git add拾取而正在被添加和提交。

這就是爲什麼所有的答案都不起作用的原因,因爲git reset HEAD^或類似的不適用於新拾取的文件,並沒有事先git歷史記錄。我很難學會它。

那麼,對於這種情況的任何解決方案?謝謝。

回答

2

的一種方式承諾:

git rm --cached <files-you-didn't-want> 
git commit --amend 

請注意,如果你已經被推那麼錯誤提交,你需要做一個強制非快速向前推,以消除從遠程錯誤提交。

+0

完美!謝謝。 – xpt

0

git reset <file>怎麼樣?或者只是git reset從指數從上git add

1

git commit --amend刪除所有文件,當你提交太早,可能忘記添加一些文件,或者你弄亂你的提交後,你已經做到這一點

0

使用'git rm --cached name_of_file'命令。這將忽略這些文件,即使它們是之前用'git add'添加的。