9

この問題は git と同じではありません- 他のリポジトリからファイルをミラーリングする方法または裸のリポジトリを更新するにはどうすればよいですか?

でクローンしたリポジトリ--mirrorはベアリポジトリなので、 でクローンしたリポジトリ--bareと同じようにでき--mirrorますか? 構成ファイルを変更するだけで実行できますか?

そうでない場合、ベア リポジトリをミラー リポジトリに変換できる他の方法はありますか?

別の質問です。このコマンドはベア リポジトリで実行できるのに、ミラー リポジトリでは git push --all を使用できないのはなぜですか?

4

3 に答える 3

14

で複製されたリポジトリを、 で複製さgit clone --bareれたものと一致するものに変更するgit clone --mirrorには、次の手順を実行します。

$ git config remote.origin.fetch "+refs/*:refs/*" 
$ git config remote.origin.mirror true

次にgit fetch、すべてを最新の状態にする必要があります。

于 2014-02-10T22:07:47.727 に答える
2

でリポジトリのクローンを作成している場合はgit clone --mirrorgit push --allデフォルトのプッシュポリシーに従って、すべてmatchingローカルブランチをリモートリポジトリにプッシュします。

ただし、リモートリポジトリがリモート参照としてローカルリポジトリに追加されている場合(つまり、ローカルリポジトリが別のリモートリポジトリから複製されている場合)、git push --all secondRemoteRepo最初にそれらのブランチをフェッチしない限り、プッシュ先の一致するブランチは多くありません。
したがって、これは機能するはずです。

git fetch secondRemoteRepo
git push --all secondRemoteRepo
于 2012-09-10T11:51:55.263 に答える
1

現在:

git remote add --mirror=fetch origin <url>

それで

git fetch
于 2016-07-14T14:34:24.637 に答える