如何更改多个git repos的来源?

时间:2014-08-11 02:49:41

标签: git git-submodules

我想在一个存储库中创建多个存储库。这些将是递归的。我已经拥有80-90个存储库的代码。但我需要改变"起源"每个存储库。 所以,我有两个问题 -

  1. 如何递归创建git存储库?

  2. (如果.git已经存在我如何更改每个存储库的" origin"

  3. 任何帮助都将受到高度赞赏。

2 个答案:

答案 0 :(得分:1)

注意:using submodule意味着:

  • 你可以独立于包含它们的主回购创建你的80回购:它们可以托管在(你的磁盘/ GitHub / GitLab /...)
  • 您将这些repos声明为子模块,这意味着您在键入git submodule add时使用了相应的源url:

    cd /path/to/main/repo
    git submodule add /url/to/submodule/repo
    

然后:

git submodule update --recursive --init

之后无需更改origin

话虽如此,如果您仍然需要更改其网址,那么commentedkeltar

  

git submodule foreach 'git remote set-url origin newremote.com:/path/to/git/dir/$path'

答案 1 :(得分:0)

如果您想从单个仓库管理一堆存储库,我建议您查看repo工具。 Android使用它来管理构成Android开源平台的100多个存储库。