从上次git提交中删除文件

时间:2016-06-30 14:59:29

标签: git version-control

这与Remove files from Git commit不同,因为那里的所有答案都不适合这种情况。 所以这是问题,

git commit之前,我们使用git add。问题是当我们正在进行git add时,有时我们忘记检查,只有在做git commit时我们才意识到git add不应该添加和提交那些文件。

这就是为什么那里的所有答案都不起作用的原因,因为git reset HEAD^或类似的方法不适用于新拾取的文件,并且事先没有git历史记录。我学到了很多东西。

那么,这种情况的解决方案是什么?谢谢。

4 个答案:

答案 0 :(得分:2)

提交后执行此操作的一种方法:

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

请注意,如果您已经推送了错误提交,那么您需要执行强制非快进推送,以便从远程执行中删除错误提交。

答案 1 :(得分:1)

git commit --amend当你太早提交并可能忘记添加一些文件,或者你搞砸了你的提交

答案 2 :(得分:0)

git reset <file>怎么样?或者只是git reset从上一个git add

中删除索引中的所有文件

答案 3 :(得分:0)

使用&#39; git rm --cached name_of_file&#39;命令。这将忽略文件,即使它们之前添加了&#39; git add&#39;。