繁体   English   中英

将Git中的更改停止到特定文件

[英]Unstage changes in Git to a specific file

我对存储库中的特定文件进行了一些更改,并提交了这些更改。 全部在一次提交下。

在那次提交中,我还对其他几个文件进行了更改。 如何取消对我对该特定文件所做的更改,而不是所有在提交中更改的文件?

Unstage在这里不是正确的词 - 它指的是从索引(暂存区域)中删除更改,暗示它们尚未提交。

由于您的更改已提交,因此您要问的方法是检查上一次提交中的文件版本:

git checkout HEAD^ path/to/file

HEAD是当前提交和HEAD^是第一父HEAD

如果您尚未将提交推送到任何地方:

$ git checkout HEAD^ path/to/revert

这将恢复您希望恢复到之前提交时所处状态的路径。 (它将还原您在上次提交时所做的任何更改。)

索引也将更新,所以现在你只需要修改你的提交:

$ git commit --amend

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM