逐步合并文件中的选定更改

时间:2013-12-03 16:38:12

标签: git

我对git分支上的文件做了一些更改(让我们调用这个分支experimental)。我现在想要将我对此文件所做的一些更改,但不是所有更改合并到我的development分支中。是否有办法逐步完成此文件中的每个更改并手动告诉git合并特定更改或忽略它?

1 个答案:

答案 0 :(得分:1)

如果实验中的更改已经处于提交粒度,那么您需要

git checkout development
git cherry-pick <sha ID>
...

如果您对实验的更改是更随机的较小提交一次大提交,那么我将遵循以下流程:

git checkout development
git merge experimental --squash --no-commit

这会将所有更改放入索引中 然后以交互方式添加:

git add -i

这提供了一个非常基本的用户界面,您可以在其中最初取消所有内容,然后选择深思熟虑,甚至以逐行粒度编辑帅哥。 一旦您对分期中的内容感到满意,

git commit

您仍然会在“已修改”状态中进行随机更改,基本上(1 - 您提交的内容)。 你想用以下方法摆脱这个:

git reset --hard HEAD