当我的提交更改也涉及其他文件时,如何git恢复一个特定文件的更改?

时间:2018-10-29 14:40:14

标签: git

案例方案

假设我有3个文件:

 Dir/
     a.py
     b.py
     c.py

,我有10个提交,每个提交都涉及对这三个文件中所有文件的更改。

  

例如,使用哈希代码ABCD的提交将更改 a 中的3行, b 中的10行和 c 中的1行。其余的表示相同。

到那时,我意识到对文件 a.py 所做的所有更改都是无用的。

  1. 如何恢复文件 a.py 的所有更改,而又不恢复其他两个文件的更改?
  2. 解决这种情况的最佳实践是什么?

1 个答案:

答案 0 :(得分:3)

这将执行:git checkout <commit_hash> -- <file>

它将将此特定文件重置为指定的提交。