VonCによってすでに正しく回答されていますが、いくつかの追加の詳細があります:
Git 拡張機能は、ローカル ファイルのみをチェックconfig
して、この誤った非常に問題のある仮定を行います。
ローカル リポジトリは複数のリモートを持つことができますbranch
が、ファイル内のブランチごとに 1 つのセクションしか持つことができず、ブランチを特定のリモートにマッピングします (ブランチをより多くのリモートにマッピングすることは意味がありconfig
ません。andコマンドbranch
を簡略化するためにのみ使用され、 and引数を省略できます)。push
pull
remote
branch
リポジトリに複数のリモートが指定されているが、もちろんセクションがそのうちの 1 つにしかマップされていない (私たちのような) シナリオでは、これらのセカンダリbranch
リモートの 1 つにプッシュしようとするたびに、この警告が表示されます。慣れていれば大丈夫ですが、初めて見た人にとっては、避けなければならない何か問題が発生しようとしているという考えをすぐに与えるので、問題になります.
メッセージ自体が紛らわしいです。この言い方は、Git 拡張機能が実際にリモート リポジトリに接続し、それを調べて、そこにブランチが存在しないことを発見したという考えを与えます。しかし、これは事実ではなく、ブランチはリモート リポジトリの に既に存在します/refs
。Git 拡張機能はローカルconfig
ファイルのみをチェックしたため、メッセージは誤った情報を提供します。
通常、Git 拡張機能は、このようなメッセージを表示する前にリモート リポジトリに接続する必要がありますが、この場合でもpush
、リモート リポジトリのブランチを削除することもできるのと同じように、新しいブランチをプッシュしても問題はありません。 Git 拡張機能はローカル ファイルのみをチェックします。追加するよりも危険config
ですが、警告がまったく表示されない可能性があります。