かずきのBlog@hatena

日本マイクロソフトに勤めています。XAML + C#の組み合わせをメインに、たまにASP.NETやJavaなどの.NET系以外のことも書いています。掲載内容は個人の見解であり、所属する企業を代表するものではありません。

gitで複数リポジトリに同時にプッシュしたい

そんなときもありますよね?ということで先人がいました。

stackoverflow.com

>mkdir sample
>git init
>git remote add all https://github.com/runceel/test1.git

でリモートを追加

>git remote -v
all     https://github.com/runceel/test1.git (fetch)
all     https://github.com/runceel/test1.git (push)

こんな感じになってる。

そして、pushを書き換える。

>git remote set-url --add --push all https://github.com/runceel/test2.git
>git remote -v
all     https://github.com/runceel/test1.git (fetch)
all     https://github.com/runceel/test2.git (push)

もう一度オリジナルを追加すると…

>git remote set-url --add --push all https://github.com/runceel/test1.git
>git remote -v
all     https://github.com/runceel/test1.git (fetch)
all     https://github.com/runceel/test2.git (push)
all     https://github.com/runceel/test1.git (push)

こうなる。(なんでかは理解してない)

これで何かcommitしてpushすると

>git push all master
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (6/6), 451 bytes | 0 bytes/s, done.
Total 6 (delta 0), reused 0 (delta 0)
To https://github.com/runceel/test2.git
 * [new branch]      master -> master
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (6/6), 451 bytes | 0 bytes/s, done.
Total 6 (delta 0), reused 0 (delta 0)
To https://github.com/runceel/test1.git
 * [new branch]      master -> master

こんな感じで2つのリポジトリにpushされた。

追記

こういうことね

stackoverflow.com