我正在为两个机构开发一个相同的应用程序.除了单个属性文件中的名称外,所有代码都是100%相似的.将来,这两者之间也需要进行改进.是否可以在一个git存储库下管理两个应用程序的源代码,以便改进和错误修复将非常容易,但是会有不同的属性文件?
是的,使用分支机构.
首先提交所有常见的内容,包括相关文件的公共(可能永远不会被实际使用)版本:
(1)
Run Code Online (Sandbox Code Playgroud)
然后,创建一个分支并将更改添加到该文件:
(2) <-- customer A
/
(1)
Run Code Online (Sandbox Code Playgroud)
然后更新回原始变更集,并使用对同一文件的其他更改创建另一个分支:
(2) <-- customer A
/
(1)
\
(3) <-- customer B
Run Code Online (Sandbox Code Playgroud)
然后你从(1)分支开发,合并到你认为合适的各个(客户?)分支:
(2)---------(6) <-- customer A
/ /
(1)---(4)---(5)---(8)---(9) <-- development trunk
\ \
(3)---------(7) <-- customer B
Run Code Online (Sandbox Code Playgroud)
等等
请注意,如果您有许多客户,或者许多此类较小的差异,可能会有其他方法来处理差异,例如构建系统将构建系统替换为构建的一部分,而不是具有N个分支,这可能会很快变得难以处理这种微小的差异.
换句话说,如果差异与品牌和每个客户可以访问的功能等内容相关,那么构建系统将为每个客户准备不同的可分配项,这些客户已经配置了正确的文件和配置.这根本不需要额外的分支(除了你应该已经拥有的与开发,测试,生产等相关的分支).
| 归档时间: |
|
| 查看次数: |
88 次 |
| 最近记录: |