268

私はローカルの git リポジトリに取り組んでいます。と の 2 つのブランチがmasterありfeature_xます。

リモートリポジトリにプッシュしたいのですが、ブランチfeature_xに変更をプッシュしたくありません。master

私のブランチ(ブランチはすでにリモートに存在します)からは機能しますかgit push origin feature_xfeature_xfeature_x

現在、マスターにプッシュできないため、ボックスでこれをテストしたくありません。

4

6 に答える 6

398

はい、次のようにしてください

git checkout feature_x
git push origin feature_x
于 2009-05-04T13:57:28.967 に答える
86

デフォルトでgit pushは、すべてのリモート ブランチを更新します。ただし、現在のブランチのみをアップストリームに更新するように git を構成できます。

git config push.default upstream

これは、git push を実行すると、現在の (チェックアウトされた) ブランチのみが更新されることを意味します。

その他の有効なオプションは次のとおりです。

  • nothing: refspec が明示的に指定されていない限り、何もプッシュしないでください (エラー出力) 。これは主に、常に明確にすることで間違いを避けたい人を対象としています。
  • matching:両端に同じ名前を持つブランチをすべてプッシュします。(Ver 1.7.11以前のデフォルトオプション)
  • upstream: 現在のブランチを上流のブランチにプッシュします。このモードは、通常プルするのと同じリポジトリにプッシュする場合にのみ意味があります (つまり、中央ワークフロー)。ローカル ブランチとリモート ブランチに同じ名前を付ける必要はありません。
  • tracking: 非推奨upstreamです。代わりに使用してください。
  • current: 現在のブランチを受信側の同じ名前のリモート ブランチにプッシュします。中央ワークフローと非中央ワークフローの両方で機能します。
  • simple: [Ver 1.7.11から利用可能] 集中ワークフローでupstream、上流ブランチの名前がローカルのものと異なる場合、プッシュを拒否する安全性が追加されたように動作します。普段引っ張るリモコンとは別のリモコンに押すときは、 として働きますcurrent。これは最も安全なオプションであり、初心者に適しています。このモードは、Git 2.0 でデフォルトになりました。
于 2012-05-31T07:51:11.530 に答える
10

Karthik Bose の回答に加えてマイナー アップデート- git をグローバルに構成して、すべてのワークスペースがそのように動作するように変更できます。

git config --global push.default upstream
于 2014-03-28T20:24:48.453 に答える