0

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

4

2 回答 2

0

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

如果处理通用代码,请继续通用代码分支(例如开发或主控)。如果正在处理特定于硬件的代码,请检查到该分支并针对公共代码分支进行变基,然后添加新提交,推送到远程并保留它。

您基本上将拥有 1 个用于公共代码的分支,硬件分支将使用这些分支来获取当前的业务逻辑版本,而无需相互交互或更改它。

希望能帮助到你!

于 2020-05-06T05:24:05.647 回答
0

我会将所有代码保留在同一个分支下。

保留两个生产分支有很多困难:

  • 你必须合并/变基两次,
  • 这是处理冲突时的两倍负担,
  • 您会发现自己在应该通用的代码中存在差异,
  • 很难确定什么是生产版本,
  • ETC ...

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

于 2020-05-06T07:41:32.457 回答