如何维护同一个基础软件的源代码,但两个不同的硬件,比如说3%的变化。

问题描述 投票:0回答:1

我维护了一个针对2种硬件设备的代码库。这些版本在一些特定的硬件和特定的功能方面有所不同。这种差异可能占到代码库的3-4%左右。我应该将其维护为同一个仓库的两个分支还是两个不同的仓库。我正在使用 git

git git-branch branching-and-merging git-repo
1个回答
0
投票

我会创建一个只包含通用代码的分支,然后从该分支中创建2个分支(每个硬件都有一个,只有在它们自己的专用文件夹中才能接受更改)。

如果工作在通用代码上,就去通用代码分支(比如说develop或master)。如果是针对特定硬件的代码,就到该分支去签出,并对通用代码分支进行重写,然后添加你的新提交,推送到远程,然后就可以了。

基本上你会有1个普通代码分支,它将被硬件分支使用,以获得当前的业务逻辑版本,而无需相互交互或改变它。

希望对你有帮助


0
投票

我会把所有的代码都放在同一个分支下。

保留两个生产分支有相当多的困难。

  • 你必须合并base两次。
  • 那在处理冲突时,就会有两倍的负担。
  • 你会发现自己的代码应该是共同的,但却存在差异。
  • 要辨别什么是生产版本就更难了。
  • 等...

与架构的差异可以体现在文件结构、代码本身和构建脚本中(编译选项等......)。

© www.soinside.com 2019 - 2024. All rights reserved.