![]() |
1
7
对于我们中不熟悉Redmine的人,请扩展您的描述以包括以下问题的答案:追踪器需要什么样的访问存储库?它需要做出自己的承诺吗?或者,它是否只需要某些类型的读访问(可能是为了验证提交哈希并扫描提交日志中的关键字)? 如果您的跟踪器只需要读取权限,那么您可能根本不需要合并任何子树。在单个存储库中有多个初始提交(允许多个独立的历史记录)是完全可以接受的。Git项目本身就是为一些额外的项目做这个的。( 男人 , HTML , 托多 )它不与共享(提交)历史记录,但与源代码的主要分支集一起发布。( 维恩特 , 主人 , 下一个 , 聚氨基甲酸酯 )就您的目的而言,为每个子存储库设置一个远程文件,并将它们的分支提示提取到聚合存储库中就足够了。也许自动远程跟踪分支就足够了,或者您可能需要采取额外的步骤来创建(和更新)基于远程跟踪分支的本地分支。 您描述的子树合并方案在源存储库中的分支不相关或只有半相关的一般情况下可能没有意义。但是,如果所有源存储库共享一组分支,其中每个分支都有一个在所有存储库中相同的给定用途,那么您可能会有意义地将它们合并到一种超级存储库中。 但有趣的问题不是如果两个存储库有同名的分支怎么办?__,但是_如何处理存储库缺少共享的__全局_集分支的情况?艾斯。 如果所有子存储库都有相同的分支集,那么您只需执行您所做的操作。 主人 ,但每个分支一次。当存储库中缺少某个特定分支时,就会出现问题。你可以用它代替 主人 但这并不总是正确的答案。这取决于为什么您首先要将存储库聚合在一起,以及您希望在超级存储库分支的子树中看到什么。 如果子存储库是 不 密切相关,那么我真的对这种子树方法的合理性有怀疑。对于不相关的存储库来说,这样的方法似乎与谷物相反。这可能仍然是可能的,但我怀疑是否有任何工具可以帮助您,您需要花费一些时间来计划解决这些棘手的问题。
如果您最终坚持使用子树合并,那么您可能会看到第三方
收集分支,不合并
如果Redmine指定
两种方法最终都将分支收集到
由于更新是盲目地获取到这个组合存储库中的,所以任何人都不应该试图直接使用它:没有直接在其分支上进行的提交,没有来自外部的推送。如果有人在本地进行提交或推送到其中一个分支上,那么在下一次更新完成时,这些提交将被清除。
如果Redmine可以处理一个空存储库,我建议使用一个。使用
除此之外
创建额外的初始提交要使用新的初始提交来安排分支,请参见 GitTips page 在下面 How to create a new branch that has no ancestor . 其中两个配方涉及另一个存储库,在完成通常的init/add/commit步骤后,您可以从中推送或获取分支(这正是上述配方以自动方式所做的)。 |
![]() |
Harry · 如何在编译时获取克隆的git仓库的标签 6 月前 |
![]() |
Ooker · 如何从blob中删除秘密? 6 月前 |
![]() |
hasdrubal · git日志图智能分支过滤器 6 月前 |
![]() |
J. Doe · 为什么git中没有跟踪git文件? 7 月前 |