作为一个集成测试,我想在与我的主人合并之前加入几个分支。
所有这些都与主人分道扬and,并以自己的方式。这是一个正确的合并不同的分支,没有直接关系(例如父/子)??
重新加入分支有什么好的做法吗?
提前致谢, 劳尔。
答案 0 :(得分:1)
如果这些分支全部来自大师,他们确实有一个共同的祖先
y--y--y
/
x--o--x--x--x--x--x--x
\
z--z--z
('o'是这里的共同祖先)
在这种情况下,集成分支中的合并是一种很好的方法(重新定义这种长期存在的分支将涉及重写过多的公共历史)
如果分支是真正分开的,那么 git移植点理论上可以允许共同的历史记录:请参阅How to merge two branches without a common ancestor?。
但这并不理想,因为嫁接点没有得到承诺
filter-branch
可能会使修改成为永久修改,但重写历史记录。
答案 1 :(得分:0)
如果这些分支都来自大师,他们确实有一个共同的祖先。
但回答你的问题(但不是你的问题),可以合并两个没有共同祖先的历史,例如两个不同的项目,例如使用git merge
的“子树”合并策略。
要将一个分支重新放在另一个没有共同祖先的分支上,您需要使用--root
git rebase
选项。