常に両方の名前を指定せずに、異なる名前のリモート ブランチを持つローカル ブランチをプッシュおよびプルする簡単な方法があるかどうか疑問に思っていました。
例えば:
$ git clone myrepo.git
$ git checkout -b newb
$ ...
$ git commit -m "Some change"
$ git push origin newb:remote_branch_name
これで、誰かが remote_branch_name を更新した場合、次の操作を実行できます。
$ git pull
そして、すべてがマージ/早送りされます。ただし、ローカルの「newb」に変更を加えた場合は、次のことができません。
$ git push
代わりに、次のことを行う必要があります。
% git push origin newb:remote_branch_name
ちょっと馬鹿げているように思えます。git-pull
を使ってgit-config branch.newb.merge
どこから取得するかを決定するのであれば、なぜgit-push
同様の設定オプションがないのでしょうか? これには良いショートカットがありますか、それとも長い道のりを進むべきでしょうか?
ベストアンサー1
最初のプッシュ追加を行うときに-u パラメータ:
git push -u origin my_branch:remote_branch
後続のプッシュは、希望する場所に移動します。
編集:
コメントによると、それはプルを設定するだけです。
git branch --set-upstream
それをすべきです。