如何自动将远程仓库添加到Git仓库?

3

我们团队最近新增了一些成员。每次新增一个人,他们都会有自己的远程Git仓库。每个项目的.git/config中的远程数量都会增加一个。团队中的每个人都需要将新的远程添加到每个项目中。当新成员初始克隆项目时,他们必须为每个现有团队成员添加远程。

这非常令人烦恼。有没有一种方法可以自动将所有适当的远程添加到所有项目中,以消除这种麻烦?


3
为什么每个团队成员都要有一个远程代码库? - 1615903
2
为什么要麻烦呢?任何想要与Alice的repo交流的人都可以随时添加远程,使用你现在用于批量添加的任何工具。为了额外的便利性,可以查找如何创建git别名,并创建一个幂等的git remotefor Alice - jthill
1个回答

1

编写一个Shell脚本,确保所有远程仓库都存在,并通过将其检入存储库或通过其他方式使其可用与团队共享。

如果您愿意,可以重复使用 我已经编写的用于管理Git远程仓库的一些Shell函数,例如:

# clone the above repo to some $MR_CONFIG_REPO first
source $MR_CONFIG_REPO/sh.d/git-remotes
for developer in alice bob charles dave; do
    git_add_remote $developer https://github.com/$developer/$PROJECT_NAME.git
done

# or if the repo URLs don't follow a pattern
git_add_remotes "
    alice   https://github.com/alice/$PROJECT_NAME.git
    bob     https://src.bob.com/git/$PROJECT_NAME.git
    charles file:///mnt/nfs/git/$PROJECT_NAME.git
    dave    git@github.com:dave/${PROJECT_NAME}-2.git
"

如果你想变得更加复杂,可以从我的mr配置存储库中窃取更多想法,特别是这个文件mr是一个非常方便的批量管理存储库的工具,我已经广泛使用它很长一段时间了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接