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