1

refs/notes/*すべての git notes refs ( ) をある中央の git リポジトリから別のリポジトリに転送したいと考えています。

git 中央サーバーAと を想定し、git ノートを からにBレプリケートしたいと考えています。 AB

次のようなオプションを使用しようとしました:

  • git push remoteB refs/notes/*:refs/notes/*; git push --mirror(このオプションは機能しますが、 に存在しないブランチなどの追加の参照を削除していますA);
  • git push --all(このオプションは git ノートの同期を維持しませんが、同期の維持にはうまく機能しますrefs/heads) コミット後の git フックで。

[git@hdqpdqaapp5 modeln50.git]$ GIT_TRACE=1 git push 
source +refs/notes/*:refs/notes/* 
trace: built-in: git 'push' 'source' '+refs/notes/*:refs/notes/*' 
trace: run_command: 'ssh' '-p' '8081' 'hdqpdsource1.modeln.com' 'git-receive-pack '\''/modeln56.git'\''' 

リモート名は正しく取得されていますが、プロジェクト名が間違っています ( modeln56)。また、コマンドは何も出力されずにハングします。

4

1 に答える 1

0

それはあなたが望むすべてをプッシュするはずです(ノートとヘッド):

git push remoteB 'refs/notes/*:refs/notes/*' 'refs/heads/*:refs/heads/*'

refspec を追加することで、タグもプッシュできます'refs/tags/*:refs/tags/*'

remote.remoteB.pushrefspec のリストを入力するのを避けたい場合は、config を設定できます。

于 2013-03-28T16:16:27.943 に答える