0

我有两个 git 存储库,一个用于我正在编写的库的纯源代码,另一个用于测试环境。我将分别称它们为proddev

提交者拉取和推送到/从dev,然后一旦dev达到可释放状态,包含源代码的子目录被推送到prod。这是通过proddev. 那是容易的部分。

现在,有一个外部贡献者。有人从 中提取源代码prod,因为这就是他们项目所需的全部内容,然后他们继续将其作为子模块。

但是,我不希望他们推动刺激,因为这有可能在没有经过测试的情况下搞砸一些东西dev。所以,我希望他们推送到dev,但特别是包含源代码的子目录dev,所有常规贡献者都可以下拉并测试和处理等等等等。

这可能吗?我应该如何设置这样的东西?我应该把这样的东西分成单独的回购吗?

4

1 回答 1

0

查看 Pro Git 书籍第5.1 章分布式 Git - 分布式工作流中列出的工作流。您可以使用Integration-Manager Workflow。您将拥有一个每个人都可以从中提取但没有人可以推送到的受祝福的存储库。集成商将拥有推送权限,并会从所有开发人员那里拉取更改,集成它们,并将它们推送到那个有福的仓库。所有的 repos 都是一样的(没有一个是devor prod),你可以让人们在一个dev分支上工作,以便在将它们合并到之前更容易正确地整合它们master. 这确实为担任该角色的一个或多个人带来了很多集成工作,但这也意味着至少有一个人对整个项目有很好的了解。

我确实认为将子模块用于生产就绪代码是很不常见的。这确实是分支擅长的,并且通常用于。

于 2013-05-15T02:25:18.623 回答