首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对多个系统的版本控制

对多个系统的版本控制
EN

Stack Overflow用户
提问于 2013-08-10 04:48:44
回答 2查看 52关注 0票数 1

这个标题可能有点误导,因为我不知道该怎么命名它。

我们已经创建了一个基于we的系统,并将其出售给我们的客户。所有的主机都是我们做的。如果我们有一个新的客户购买了系统,我们从一个不同的客户那里复制一个并更改徽标,等等。

现在,如果我们做了更改,假设我们发现了一个bug并修复了它,我们必须检查所有系统并更改有bug的文件。这是我想要改变的东西。

基本上,我正在寻找的是一种简单的方法来保持这一点有条理,并易于推向生产。但也想要灵活性,如果客户想要一个特定的功能,我们能够很容易地改变它,而不是用这个功能更新每个系统。

因此,每当我们对系统的核心进行更改时,我都会以某种方式将固定文件推送到所有其他系统,而不是手动完成,这是一种麻烦和愚蠢的方式。

现在我认为这可以用git,通过某种分支构造合并成一个主分支,但我对此不太确定,也找不到任何关于它的东西。

有人知道这叫什么吗,或者有没有办法做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2013-08-10 14:28:54

这应该可以用于任何版本控制系统,而不仅仅是Git。

假设您的核心系统位于主分支中。为每个客户创建一个新分支。

如果您发现核心系统中存在bug,请在master中进行修复,并将master合并到所有客户分支中。

同时,您可以在客户分支中进行独特的更改。但是,例如,如果您更改了客户分支中的index.php,然后在master中修复了该文件中的错误,那么当您将master合并到客户分支中时,可能会出现冲突,您必须手动解决这些冲突。

而且,由于每个客户分支都是特定于您的客户的,并且具有独特的自定义更改,因此您不需要从客户分支合并到主分支。您将始终从主分支行进到客户分支,而不是相反的方向。

如果您只在核心系统中进行了较小的更改和错误修复,则此设置应该可以很好地工作,偶尔会出现较小的冲突。但是,如果您对核心系统进行大量更改,您可能会遇到太多冲突,这将使设置难以维护。这完全取决于客户分支和主分支中的独特更改的重叠。如果有很少的重叠或没有重叠,那么即使是广泛的更改也很容易合并。

票数 1
EN

Stack Overflow用户

发布于 2013-08-10 17:23:46

你可以查看post commit hooks -你可以有一个列表(可能是python字典),列出哪些分支机构在哪些客户区域,并且只要有提交,如果它是特定于一个客户,你可以拉取和更新他们的目录,但如果它在主干中,你可以在所有客户目录中自动拉取和更新。

git书中关于钩子的章节是here,并且有几个例子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18155417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档