在“git add”之后修改文件

时间:2015-01-05 09:27:50

标签: git

方案

由于在提交期间运行的PHPMD和PHPCS检查,我经常需要修改已经受" git add"影响的文件。

如果我修改添加的文件并重试提交,则无法识别更改,因此提交将再次失败。

然后我需要" git reset"要取消添加的文件,然后重新" git add"他们再次运行提交。

问题

有没有办法更新为提交暂存的文件,而无需取消添加和重新添加它们?

如果这是重复,我道歉。我的所有搜索似乎只显示具有类似单词的不同问题的结果。

4 个答案:

答案 0 :(得分:8)

在git中,文件(本身)不会暂存,更改是。因此,当您执行git add filename时,它是暂存的该文件的当前状态。如果您更改文件并想要添加这些更改,则只需执行另一个git add。

答案 1 :(得分:5)

您再次git add该文件并提交。

答案 2 :(得分:4)

  

有没有办法更新为提交暂存的文件,   无需取消添加和重新刊登广告?

无需取消添加并重新添加

再次添加该文件

git add file

在看到git status -s

后修改任何添加的文件
MM filename

所以当你再次添加它时它会变成

git add filename
git status -s
M  filename

答案 3 :(得分:2)

正如其他答案和你自己所提到的,git add应该有效。但是,我认为你已经有了一个有效的提交(没有通过一些测试)和另一个git addgit commit,你只需要为你的分支添加一个新的提交。愚蠢的人仍然存在并且失败。你可以在这里做一堆解决方案。目前只有两个例子出现在我的脑海中:

git rebase --interactive HEAD~2 

这为您提供了一个编辑器窗口,您可以将两个提交压缩为一个。只需将第二次提交前的选择更改为f或s并保存文件即可。

另一种方法是使用git commit --amend

这将允许您修改上次提交。但是,我建议阅读两者的文档。