我对git很安静,所以也许我还没有找到答案。我目前正在评估是否可以在我们公司使用git(主要用于VHDL开发)。我们目前正在使用CVS。我们的结构是:
- 项目回购(包括我们的大多数VHDL项目)
- 受限制的项目回购(只有部分用户可以访问此回购站)
- 模板仓库(例如,用于合成流程,模拟流程,测试台单元等)
新项目的设置程序是:
- 创建新的回购
- 查看您需要的模板
- !!!删除CVS链接到模板!!!
- 将所有内容检入项目仓库
- 每个用户创建一个沙箱
由于删除了模板的CVS链接,很难从模板中获取更新(例如,在一个测试平台单元中修复错误),或者从项目中恢复更改。在看git时,我找不到直接的方式:
- 查看模板
- 将它带入项目回购(我可以在其中工作)
- 将一些更改推送到官方模板仓库
我认为我不能使用分支机构,因为在官方模板回购中不会显示受限制的项目。此外,模拟和综合的当前流程使用一些文件的公共目录(该流程基于Makefile)。我已经找到了两种可能符合我目的的可能性。
- 创建合并仓库,请参阅1
- 每个项目都有一个'合并回购',其中所有模板都被克隆到(通过git remote add)。我知道这意味着推送到遥控器会检查整个项目。
- 创建每个已使用模板的克隆并将其添加为子模块,请参阅2
醇>
下面我试图概述两种方法的总体结构。欢迎任何帮助。
编辑:
我得出结论,Gerrit Code Review可以进行限制,并添加其他功能,这可以解决我的问题。我将Gerrit的结构与2进行了比较,它基本相同。