有没有办法在克隆Git存储库时自动包含多个遥控器?

时间:2014-11-18 23:59:26

标签: git github git-clone

我有一个git repo,它使用了一些不同的远程URL。有没有办法设置东西,以便这些遥控器包含在回购的克隆中。就目前而言,每次克隆回购时,克隆仅包含指向原点的标准远程引用。

如果我无法获得master(即上游)repo来存储和分发这些远程链接,那么我可以通过任何方便的方式在常用的克隆后设置它们。我认为我们可以为此编写一个钩子,但似乎没有“克隆钩子”。

1 个答案:

答案 0 :(得分:2)

使用GNU Awk附加其他遥控器

(遗憾的是)没有克隆后挂钩,但您肯定可以在每个遥控器上附加多个URL。例如,在新克隆存储库中,以下内容将向 origin 添加两个额外的URL:

awk '/url =/ {
         print;
         print "\turl = http://1st.example.com/foo.git";
         print "\turl = http://2nd.example.com/bar.git";
         next;
     };
     { print }' .git/config | tee .git/config

这使您可以在git push origin时按顺序推送所有三个网址。如果需求更复杂,您可以调整模式和打印语句。