如何丢弃git中的文件更改

时间:2012-01-24 01:19:12

标签: git

我确信这个问题已被多次回答,但我找不到答案。事情是这样的。 我必须修改几个文件并将这些更改提交到git存储库。但有时候,我会对文件添加一些意外的更改(添加一个空格,剪掉一大块代码以意识到我在错误的文件中,所以我再次粘贴前一个地方的那个块并保存文件),每当git检测到该操作为文件更改时,请让我提交这些更改。 但我无法提交这些更改(我必须证明每次提交都是合理的,而且我不能输入“添加空格”等)。 我怎么能告诉git忽略这些变化?我不想将文件恢复到以前的状态,我想对git说“这个文件没问题,不提交虚假更改,忽略它们”

2 个答案:

答案 0 :(得分:0)

只要您没有在某处推送您的仓库,将您的更改添加到索引中,然后修改您的上次提交:

git add file_with_change
git commit --amend

答案 1 :(得分:0)

我所做的是,我只是继续进行提交,例如adding blank spaceformatting等通常使用MINOR这样的识别词:

git commit -m "MINOR formatting"

然后我继续工作,在我去的时候做出提交,然后当我准备好推动时,我做git rebase -i然后压制MINORMINOR或者其他东西消息中的类似信息有助于在交互式rebase列表中快速选择这些提交)提交到先前的提交。或者甚至将它们组合成一个部分,如果有意义的话,然后推送提交。

但要回答你的确切问题,“丢弃”文件中的更改的方式,以便git将跟踪它,但仍然忽略更改是:

git update-index --assume-unchanged file

但我不建议这样做。