3

私たちのチームは最近、新しいメンバーを追加しています。新しい人を追加するたびに、彼らは自分のリモート Git リポジトリを取得します。各プロジェクトの .git/config 内のリモートの数は 1 つ増えます。チームの全員が、すべてのプロジェクトに新しいリモートを追加する必要があります。新しい人は、最初にプロジェクトを複製するときに、既存のすべてのチーム メンバーのリモートを追加する必要があります。

これは非常に面倒です。この手間を省くために、すべての適切なリモートをすべてのプロジェクトに自動的に追加する方法はありますか?

4

1 に答える 1

1

すべてのリモートが存在することを確認するシェル スクリプトを作成し、リポジトリにチェックインするか、帯域外で使用できるようにすることで、それをチームと共有するだけです。

必要に応じて、 git remotes を管理するために既に作成したいくつかのシェル関数を再利用できます。

# 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は、リポジトリのバッチ管理に非常に便利なツールであり、私はこれをかなり長い間幅広く使用しています。

于 2013-10-05T15:20:22.117 に答える