当前,我们有一个复杂而效率低下的构建系统,其中包含许多SVN和Git存储库(每个约50%),其中包括一个git子模块存储库。我们也有自制脚本,可以或多或少地管理整个事情。
我们的(封闭源代码)代码库的一个主要要点是紧密耦合,并且每个项目都在同一版本下同时发布。
我们希望将其迁移到更简单的系统和单个VCS,并正在考虑几个选项,包括:git子模块,google repo和monorepos。最终的VCS尚未定义(强制使用的选项除外),并且如果更适合我们的情况,则可以是svn,git甚至其他名称。
我们试图列出每种解决方案的优缺点,而monorepos当前面临的主要问题之一是,这似乎并不容易,甚至可能只与外部实体共享某些模块。我们希望这些人员能够检出并在这些模块上正常工作,但不能访问回购其余部分的代码或历史记录。目前,这不是我们经常或广泛进行的事情,但将来可能会发生,并且我们不希望这成为噩梦,因为我们在这里做出了错误的决定。
VCS系统中是否存在这样的特权管理系统?
还是有什么办法可以减轻这个问题?
您会考虑Team Foundation Server或服务吗?它支持Git,并包括一些不错的工作流程和持续集成功能
—
hanzolo
您要考虑的是哪种monorepo实现?
—
Dan Cornilescu