当前位置:  开发笔记 > 编程语言 > 正文

git并行拉多个遥控器

如何解决《git并行拉多个遥控器》经验,为你挑选了1个好方法。

我有一个包含数千个遥控器的仓库,我想同时从数千个遥控器中拉出,理想情况下,我可以指定要同时执行的最大数量。

我无法在联机帮助页,google或git-scm中找到与此相关的任何内容。

明确地说:我不想在多个存储库上运行一个命令,我有一个带有数千个远程控制器的存储库。

这与子模块无关,不要谈论子模块。子模块与git remotes无关。



1> torek..:

我很确定您必须编写自己的代码才能执行此操作。

正如CodeWizard在评论中所说,Git需要锁定存储库的某些部分。如果您只是git fetch在单个存储库中并行运行多个进程,则其中一些锁有时会冲突。

您可能还希望,因为,例如某种远程订货策略,从收集remoteAremoteB以及remoteC并联可以发现在10000个常见的对象remoteB相比,另外两台remoteB一般(但不总是)的超集remoteAremoteC1 虽然这也适用于顺序git fetch操作,但它的重要性已大大降低。例如,假设在A上有5000个对象(一些提交,一些树和一些Blob),而您还没有,在C上有5000个其他对象,在B上有所有10000个对象。如果您以任何顺序依次获取,您选择5k,然后5k,然后0;或10k,然后0,然后0;因为当你移到下一个远程,您已经收集并存储了5k或10k传入的对象。但是,如果你做的所有三个并行,你会带来5K,5K,和10K的对象,只有然后发现你已经翻了一番你的工作量。


1如果B 始终是一个超集,只需先(依次)转到B,然后仅同时作为它们的引用同时转到A和C ,这将指向您现在拥有的对象。

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有