2016-06-30 114 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'添加的。