70

Git でリモートにプッシュすると、次の警告が表示されます。

warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:

  git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

  git config --global push.default simple

See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

To **********************************
   6b9a6d2..3ab1eab  master -> master

この警告は何を意味し、何をすべきか?

4

4 に答える 4

93

この警告は、プッシュのスタイルとともに Git 1.7.11 で導入されましたsimplematching問題は、ブランチが単に最新ではないため、一部のブランチがリモートの対応するものよりも遅れている場合、現在のデフォルトである が、経験の浅いユーザーがプッシュを強制する可能性があることです。最終的には、ブランチを巻き戻し、自分の作業や他の人の作業を失う可能性があります。このsimpleモードは新しいpush.default動作として導入され、Git 2.0 でデフォルトになります (できれば来年初めにリリースされる予定です)。

新しいsimple動作はupstream設定によく似ています。追跡しているリモート ブランチがある場合、現在のブランチのみをプッシュします。追加の基準が 1 つ追加されます。リモート ブランチはローカル ブランチと同じ名前でなければなりません。

あなたが発見したように、メッセージを取り除く方法は setpush.defaultです。新しい動作を取得するには、次を使用します。

git config --global push.default simple

Git のデフォルトの動作を取得し、警告メッセージを表示しないようにするには、次を使用します。

git config --global push.default matching

ただし、マッチングを使用しないことをお勧めします。一般に、ほとんどの人は新しいsimple動作、つまりupstream.

于 2013-11-01T08:47:32.610 に答える
0

しばらく前と同じ問題に遭遇しました。私はこれを解決しました、

  • 最初に新しいブランチ (UAT) を複製する
  • 次に、そのブランチにプッシュします (UAT)
于 2016-06-07T16:22:16.117 に答える