在与SVN斗争之后,我被告知我应该查看GIT,因为分支机构非常适合我想要实现的工作流程。我一直在混淆,认为我现在已经对GIT的基础知识进行了分类。
我们基本上有一个中央框架,我们的一些客户使用,我希望有一个trunk / master和正常使用分支,dev /尝试东西,但我也想为每个客户端创建分支,所以我可以处理客户端特定的代码更改。这些分支永远是一个分支,永远不会最终合并回主干/主服务器。
我想要实现的主要功能是,我可以轻松地将所有更改从主干/主服务器合并到各个客户端分支,如果我需要合并或重新定义,我会感到困惑。
所以我的问题...... 我是否应该一直使用rebase,如果是这样,为什么? (因为我想在每个分支中保留各个提交?)
编辑所以我创建了一个仓库,在那个仓库中我说了{。1}}
的file.php$x = 1
$x = 2
$x = 1
是不是因为我在$x
附近的file.php中添加了一条新行,导致冲突?
答案 0 :(得分:2)
你应该合并。重新绑定将在master上进行所有更改,因为分支从master分离并且在分支顶部重新创建它们。这意味着对于您正在跟踪的每个客户端分支,将对主服务器上的每个提交进行复制。
合并在语义上是你正在做的。生成的提交图看起来会更好,Git将更容易执行合并,因为在每次合并之后,master的历史将成为分支自己的历史记录的一部分--Git将只需要考虑master上的提交上次合并,而不是重新考虑每次提交主。