这与Remove files from Git commit不同,因为那里的所有答案都不适合这种情况。 所以这是问题,
在git commit
之前,我们使用git add
。问题是当我们正在进行git add
时,有时我们忘记检查,只有在做git commit
时我们才意识到git add
不应该添加和提交那些文件。
这就是为什么那里的所有答案都不起作用的原因,因为git reset HEAD^
或类似的方法不适用于新拾取的文件,并且事先没有git历史记录。我学到了很多东西。
那么,这种情况的解决方案是什么?谢谢。
答案 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;。