私はGerrit Code Reviewで Git をセットアップしており、Git を初めて使用するユーザーにとって必要な Git コマンドを比較的簡単にする方法を探しています。
新しい機能ブランチを開始するために現在持っているコマンドは基本的に次のとおりです (Gerrit が であると仮定origin
):
git checkout baseline
git pull
git checkout -b work1234
git push -u origin work1234
work1234
これにより、いくつかの から分岐した新しい作業パッケージが開始されbaseline
、最後のプッシュで Gerrit に分岐が作成され、上流が設定されます。したがって、.git/config
次のようになります。
[branch "work1234"]
remote = origin
merge = refs/heads/work1234
現在、Gerrit は、たとえば、レビュー用の新しいコミットを特別な refspec にプッシュすることを望んでrefs/for/work1234
います。私はこれを手動で行うことができます:
git push origin work1234:refs/for/work1234
私がやりたいことは、プレーンが現在のブランチを Gerrit が必要とするリモートの refspec にプッシュするように設定する方法を見つけること.git/config
ですgit push
。私は次のgit config
分野を見てきました:
branch.<name>.*
-プッシュ参照仕様を設定するための特定のオプションがないようですpush.default
- 私はupstream
ここが欲しいremote.<name>.push
refs/heads/*:refs/for/*
-私はここで試しましたが、この場合は常にすべてのローカルブランチgit push
をプッシュしたいのですが、現在のブランチだけが必要です
Git だけでこれを行うことができない場合は、refspec を完全に指定する小さなラッパー スクリプトを作成します。ただし、Git がネイティブに適切な場所にプッシュできるとよいでしょう。