如何一次还原代码一行?

时间:2017-03-31 17:17:34

标签: git

我和一位同事在一个项目上进行结对编程。我们取得了很大的进步,但我们忘了承诺我们合作的工作。后来,我的队友们在代码库的另一部分进行了一些实验性更改。然后,他承诺进行了这项实验工作,并意外地将我们共同完成的工作纳入其中。

我现在有了他的分支和我们合并工作的提交。有没有办法遍历在该提交中添加/删除的每行代码并选择保留或还原它?

1 个答案:

答案 0 :(得分:0)

好吧,编辑git的历史是不明智的,但是如果必须的话,你总是可以使用git rebase。仔细阅读与之关联的手册页。我想你需要做的是这些内容:

git rebase -i <commit>

这将启动一个交互式编辑器,其中包含该修订中的提交列表,其中列出的每个提交的第一列表示应该使用给定提交执行的操作;其中一个动作是编辑。找到编辑时git rebase停止,以便您可以编辑文件或提交消息,修改提交,然后继续重新定位。

我建议仔细阅读man git rebase并首先尝试测试回购中的命令动态。