我有一个git存储库,可由两组用户访问:
开发团队为了调试工作,希望使用一些他们只能彼此共享的代码 - 并且不应该最终由构建团队签出。
构建团队也是如此。
我已经看过使用私有子模块 - 一个私有子模块存储开发人员之间共享的所有代码,另一个私有子模块存储构建团队共享的所有代码(他们只会看到,并具有读/写访问权限)。有没有办法让这个配置工作(子模块配置/依赖关系通常会被提交到git中,我想)?
是否有替代解决方案,这将使git repo按照我们希望的方式工作?
答案 0 :(得分:1)
如果你想继续这个特定的想法,你可以使用子模块,但反转依赖。也就是说,您将拥有以下存储库:
缺点是,如果构建团队需要从主代码库中获取新的更改,那么他们就必须在代码库中进行提交以更新子模块。
同样重要的是要注意,dev代码库不能在主代码库中拥有自己的文件自定义。主代码库将是dev代码库中的一个目录,但主代码库将跟踪该目录内的更改,而不是dev代码库。必须在主代码库目录之外跟踪所有dev / build特定的东西。
答案 1 :(得分:1)
您可以考虑使用git名称空间(请参阅gitnamespaces(7)
)以使两种变体的对象可用/共享。
查看有关工作流程的教程,无论是git教程附带的教程还是Atlassian附带的教程,请查看git book,查看{{3} }}。赶上"权利"工作流程并不简单,git
工作非常不同于集中式SCM习惯的工作。特别是,由于存储库相当轻量级,您可以拥有一个官方"一个和一个"发展"版本(并且每个开发人员依次从两者中提取到他们自己的副本),并且有人正在将开发分支整合到正式开发分支中。您甚至可以考虑(半)自动代码审查工具,例如git in the trenches(但请注意,由于多个包装问题,至少Fedora不会发货)。
Google是您的朋友,git
非常受欢迎。