![](/img/trans.png)
[英]What is the best way to maintain a git public repo fork within a private repo?
[英]Best way to maintain a Git fork
公司ACME保留了我们扩展和定制的产品X. 他们让我们的git存储库可见,但我们不能写它。 ACME正在使用他们自己的内部Git服务器和Gitolite。
我们的开发人员想要写它,所以我们需要一个本地副本。 但是,我很高兴保留公司ACME的提交历史记录。 有办法吗? 另外,我应该如何使用公司ACME的代码更新我们的代码? 我们正在使用Github Enterprise。
我的思维方式失去了公司ACME的历史。
必须有一个最好的方法。 我本质上想要创建一个本地fork并保持更新,同时仍然允许我们的开发人员访问提交代码。
这被称为“供应商分支”模式。 (考虑将这些SO标签添加到您的帖子中。)
您还可以在您的代表中嵌入ACME文件:原始的,未更改的ACME代码将存在于其自己的(所谓的“供应商” - )分支中,并将合并为“主”或任何您需要的地方。
每当ACME更改代码时,您都会检查ACME供应商分支并在那里存储更新,使用供应商标签进行标记(这样可以轻松查看内部版本的ACME),并在需要时合并更改。
编辑添加 :了解此机制后,请查看子树合并机制 。
在我看来,你可以分叉ACME存储库。 所以现在您可以对分叉存储库(或本地克隆)进行写访问。
现在,您可以在此本地存储库中创建一个新分支,以继续开发,同时仍保留与原始只读存储库链接的主分支(或将其重命名为适合您需要的分支)。
这样做,每当您需要将代码更新为ACME存储库中的最新开发时,您只需从该远程处获取更改并将它们合并到您的开发分支。 无需创建该存储库的多个副本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.