2

別の名前のリモート ブランチにプルおよびプッシュするローカル ブランチが必要でした。プルは、クローン作成およびフェッチ後に自動的にセットアップされます。しかし、プッシュは少し難しかったです。私はこれが欲しかった:

git push <remote> <localBranch>:<remoteBranch>

local:remote毎回心配する必要はありません。このブログ投稿のおかげで、すべてが機能しています。

そのため、ブログで説明されているように、デフォルトで「upstream」オプションを使用するようにグローバル構成を設定しました。例えば:

git config --global push.default upstream

そして、ローカルブランチをリモートブランチに正しくプッシュしgit push <remote>ます.

しかしgit remote -v show <remote>、デフォルトの master ブランチをアップストリームとしてリモートで実行すると、次のようになります。

* remote <remote>
  Fetch URL: <giturl>
  Push  URL: <giturl>
  HEAD branch: master
  Remote branch:
    master tracked
  Local branch configured for 'git pull':
    myLocalBranch merges with remote master
  Local ref configured for 'git push':
    master pushes to master (local out of date)

プッシュのソースとしてローカルの「マスター」ブランチがまだ報告されるのはなぜですか? それは古くなっているとも言っています(ローカルの「マスター」を使用している場合)。git push <remote>結果を実行することを除いて、Everything up-to-dateそれは間違いなくmyLocalBranch正しく使用されています。

私は何か誤解していますか?これは git remote show コマンドのバグですか? または、構成が奇妙な状態になりましたか?

4

1 に答える 1

1

実際、OP は、「 」が masterをプッシュgit remote先のブランチとして言及しているという誤った印象を受けていました。myLocalBranch

これは正しくありません: 表示されたのは、ローカルmasterがリモートにプッシュしていることだけですmaster(おそらく、リポジトリの最初のクローン中に設定されています)。

branch.myLocalBranch.mergeに固有の構成myLocalBranchは、 によってリストされていませんgit remote

于 2012-07-19T06:56:50.053 に答える