【发布时间】:2010-11-17 12:33:00
【问题描述】:
假设我是一个 repo 的维护者,并且我想从贡献者那里获取更改,有几个可能的工作流程:
- 我
cherry-pick来自远程的每个提交(按顺序)。在这种情况下,git 将提交记录为与远程分支无关。 - 我
merge分支,拉入所有更改,并添加新的“冲突”提交(如果需要)。 - 我
merge来自远程分支的每个提交单独(再次按顺序),允许为每个提交记录冲突,而不是全部组合在一起。 - 为了完整起见,您可以使用
rebase(与cherry-pick选项相同?),但我的理解是这可能会导致贡献者混淆。也许这消除了选项 1。
在情况 2 和 3 中,git 记录了提交的分支历史,与 1 不同。
使用所描述的cherry-pick 或merge 方法之间的优缺点是什么? 我的理解是方法 2 是常态,但我觉得用单个解决大提交“冲突”合并,不是最干净的解决方案。
【问题讨论】:
标签: git merge cherry-pick