2

在我的办公室,我们有一个自制的内容管理系统。缓慢而稳定地,我们设置了 60 个 CMS 实例。是的,我们是一家大公司;一个非政府组织。

我们的大多数办公室都使用当前形式的 CMS。一些办公室定制了颜色、字体,基本上是皮肤。其他一些构建新功能,有时我们会将其带入核心。我的任务是更有效地管理源。

可以说 - 我正在管理“核心”,我有办公室“A”和办公室“B”。Office A 仅自定义颜色,但 Office B 对核心进行了一些更改(不是很多),并且它们的代码与核心不同。我只想对“核心”负责。当我开发一项新功能时,我想(在接受后)将这些更改与其他办公室同步。

我想创建永远不会与主人合并的分支。但是我在Master上做的改动不能去分支??我应该采取什么方法,应该注意什么?

4

1 回答 1

1

这是一种可能的方法。

对于你想要应用到 master 的 office 分支中的提交,只需在 master 上挑选它们。如果你知道你在做什么,你也可以在 master 之上 rebase 一系列提交。

反过来说,合并确实是合适的;您将希望将 master 合并到 office 分支中,而不是相反。您将查看要将核心更改应用到的办公室分支,并且git merge master. 这将尝试合并,但只会触及办公室分支;master 分支不会被移动。

您可能还需要考虑提供默认颜色列表,并允许创建一个新文件来覆盖这些颜色。您将在其中列出覆盖文件名,.gitignore以便这些更改永远不会提交到 Git 存储库。您将能够更新 master 中的默认值并将其合并到 office 分支中,但除了已部署的副本之外,您永远不会看到 office 颜色覆盖。

于 2012-11-09T03:34:25.043 回答