2

我正在开发一个使用供应商提供的库的 C 嵌入式固件项目。例如,TCP/IP 堆栈库。供应商会定期更新这些库。但是,我们为我们的特定应用程序对库进行了许多添加和自定义。

在某些情况下,以前的设计人员获取了一个库源文件,对其进行了修改,然后将其重命名并将其移动到源中的不同文件夹中。这似乎有问题,因为它使跟踪文件和应用供应商库更新变得更加困难。

这种情况有哪些最佳实践?换句话说,将定制与原始库源文件分开是否可行?有哪些成功的方法呢?

4

1 回答 1

1

您应该使用与项目分开的库文件。我建议使用版本控制(Mercurial、Git 或类似的)来管理更新:

  1. 制作 repo 并提交原始供应商库(分支A)。
  2. 进行更改并将它们提交到分支BBA开始)。
  3. 每当您进一步修改库时,请在分支B中编辑源并提交更改。
  4. 如果 vendor 进行了更新,则将它们提交到分支A,然后将A的头部合并到B的头部。
  5. 准备好后,将分支B中的最新文件复制到主项目,或者将其编译为可以链接到主项目的库。

那么你的历史可能看起来像这样:

A1 ------- A2
  \          \
   B1 - B2 -- B3 - B4

在哪里:

  • A1是原始供应商库
  • A2是更新的供应商库
  • B1,是你B2B4改变
  • B3将供应商的更改合并到您的更改中。
于 2013-10-10T06:37:51.713 回答