如何 git 还原一个特定文件的更改,而我的提交更改也涉及其他文件? [复制]
Posted
技术标签:
【中文标题】如何 git 还原一个特定文件的更改,而我的提交更改也涉及其他文件? [复制]【英文标题】:How to git revert the changes of one specific file, while my commits changes are involving other files as well? [duplicate] 【发布时间】:2019-04-02 12:36:31 【问题描述】:案例场景
假设我有 3 个文件:
Dir/
a.py
b.py
c.py
我有 10 次提交,每一次都涉及对所有这三个文件的更改。
例如,带有哈希码 ABCD 的提交从 a 更改了 3 行,从 b 更改了 10 行,从 c 更改了 1 行。同样代表提交的其余部分。
那时我意识到文件 a.py 中所做的所有更改都是无用的。
-
如何在不恢复其他两个文件的更改的情况下恢复文件 a.py 的所有更改?
处理这种情况的最佳做法是什么?
【问题讨论】:
【参考方案1】:这样就可以了:git checkout <commit_hash> -- <file>
。
它会将此特定文件重置为指定的提交。
【讨论】:
谢谢,解决了我的问题以上是关于如何 git 还原一个特定文件的更改,而我的提交更改也涉及其他文件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章