如何使用版本控制管理库的多个小部分

时间:2015-06-04 12:31:26

标签: version-control mercurial

我是源代码控制的新手,所以我不想在为我的项目选择错误的设置时犯错误。 我有一种由许多小“程序”组成的“库”(它们是用第三种软件特定的伪语言编写的)。每个程序都是2/3文件的独立“小包”(只是程序本身,文档,可能只有一个或两个其他子程序,只需要主程序)。

所以我有数百个这样的程序包,根据应用领域存档在子文件夹中,其中一些更复杂可能会使用其他更基本的程序包。

我在早期阶段经常修改这些程序,以改进它们,但当然有时修改会破坏兼容性,因为我涉及添加/删除输入/输出参数,所以我想我必须以某种方式“标记”每个版本程序,好像它是一个单一的软件...

所以我想知道用版本控制管理它们的最佳方式是什么(我正在使用Mercurial):我应该制作数百个存储库吗? o_O或者将所有内容保存在一个大型存储库中,并在每次修改过程时对其进行标记?或者也许学习和使用子库?

感谢您的帮助。

西蒙

2 个答案:

答案 0 :(得分:0)

可以是子徽章(或GuestRepo - 2013年没有更新)带标签

  1. " main"中的每个变更集repo已将链接从所有存储库链接到更改集,即当您更新到master中的旧变更集时,所有子目录也会根据情况进行更新
  2. 主存储库中的标签将允许您标记稳定的|功能组合以便重复使用

答案 1 :(得分:0)

Subrepos是有道理的,如果每个包都能代表自己,而不需要与主软件连接。如果不满足这个条件,我会留在一个单独的存储库中。特别是因为你声明你的软件包包含的文件很少,几乎没有变化,所以subrepo方法似乎没有意义。