3

オリジンにとてつもなく長い名前のブランチがあるとしましょう...

$> git branch -a
* master
  origin/master
  origin/branch-with-a-ridiculously-long-name

そして、そのブランチをローカルで作業するときは、 のようにばかばかしくない名前を付けたいと思うでしょうbob

$> git checkout origin/branch-with-a-ridiculously-long-name
$> git checkout -b bob
$> git branch --set-upstream bob origin/branch-with-a-ridiculously-long-name

プッシュするときが来たら、次のように実行すると何ができますか:

$> git checkout bob
$> git push

次に、「bob」のローカル変更は「ばかばかしいほど長い名前のブランチ」に送信され、「bob」と呼ばれるオリジンに新しいブランチを作成しませんか?

私は事実上、git push暗黙的に に展開する方法を求めていgit push origin bob:branch-with-a-ridiculously-long-nameます。

一応設定は行っていると思いますgit config push.default upstreamが、ローカルのブランチとリモートのブランチの名前が違うことにどう対処すればいいのかわかりません。

4

3 に答える 3

4

に設定push.defaultした場合upstream(またはtracking1.7.4.2より前のバージョンのgitで)、実行時に必要なことを正確に実行する必要があります。

   git push

... また:

   git push origin

実行したgit branch --set-upstreamコマンドを構成設定と組み合わせて実行すると、それが機能するはずです。

gitpushとgitpullの間のこの不幸な非対称性について投稿しました。

于 2011-09-28T12:29:42.257 に答える
1

これはあなたが求めているものですか? http://markmcb.com/2008/09/21/multiple-remote-git-branches-with-different-local-names/

于 2011-09-28T12:27:50.500 に答える
0

git の最近のバージョン (ほとんどの 2.x バージョン) には、この構成をすべて 1 つのコマンドで設定するオプションが含まれています。

git checkout -b bob origin/branch-with-a-ridiculously-long-name

これにより、bob の上流が正しいリモート ブランチに設定されます。

または、すでにローカル ブランチがある場合は、次の--set-upstream-toフラグを使用できます。

git checkout bob
git branch --set-upstream-to origin/branch-with-a-ridiculously-long-name

これらはどちらも git config を正しく設定します

于 2016-06-14T03:36:35.903 に答える