我正在开发一个计划保存在 git 存储库中的新项目。我知道如何在 CVS 中执行此操作,但我对 git 有点陌生,可以使用一些建议。
该项目是两个嵌入式设备的固件,它们相互通信并被打包成一对。对于这两种设备,都有代码的生产变体和制造变体。这两个设备项目都有许多子/兄弟项目,用于执行硬件的各个位(闪烁 LED 等)或与硬件相关的代码位(驱动程序等)。大多数代码在所有事物中都是通用的。
我还要求能够独立地修改生产和制造固件,以防止对一个固件的更改通过验证将另一个发回。
下面是我现有的目录布局。在我知道我会使用 git 之前,它就有机地成长了,而且大部分时间都被放下了。如果有更好的方法,我不反对重新组织整个事情。
- 项目根
- 包括
- 源代码
- 设备A
- 生产
- 制造业
- 眨
- 纽扣
- ...
- 设备B
- 生产
- 制造业
- 眨
- 纽扣
- ...
我很想将生产和制造放在分支上,但我通常在给定的一天同时工作,而 git 一次只允许一个分支处于活动状态。然后我不知道如何处理闪烁、按钮等,因为它们并不是真正的制造或生产。建议?
说明:
代码的制造版本在生产线上用于测试硬件。产品代码在硬件通过测试站后加载,然后交付给客户。两者至少有 75% 相似,但它们需要独立,这样我就可以修复生产代码中的错误,而无需停止生产线。
因为 DeviceA 和 DeviceB 是一对,所以两个代码集都被标记并同时发布,具有相同的发布版本号。