[解決済み] 分散型ワークフローのためのgitの "simple "と "current "push.defaultの比較
2022-06-20 15:23:17
質問
機能的に言えば、分散型ワークフローにおいて、私は次のような違いがあるとは思えません。
simple
と
current
のオプションは
push.default
のコンフィグ設定です。
current
は、現在のブランチを指定されたリモートの同じ名前のブランチにプッシュします。
simple
は、現在のブランチに対して追跡されているリモートと追跡されていないリモートの両方に対して、同じことを効果的に行います (どちらの場合も、同じブランチ名を強制的に使用します)。
私が見逃している分散型ワークフローのためのこの 2 つの重要な違いについて、どなたか説明していただけませんか?
どのように解決するのですか?
違いは
simple
,
git push
(は、現在のブランチがリモートの上流ブランチを追跡していない場合(リモートに同じ名前のブランチが存在する場合でも)、(参照仕様を渡さずに)失敗します。
$ git checkout -b foo
Switched to a new branch 'foo'
$ git config push.default simple
$ git push
fatal: The current branch foo has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin foo
一方
current
は現在のブランチが上流を追跡しているかどうかを気にせず、ただ同じ名前を持つブランチにプッシュしたいだけです。
$ git config push.default current
$ git push
Total 0 (delta 0), reused 0 (delta 0)
To /Documents/GitHub/bare
* [new branch] foo-> foo
ドキュメンテーション
からの Git 設定ドキュメント :
upstream
- 現在のブランチをその上流ブランチにプッシュする...
simple
- のように、上流ブランチの名前がローカルブランチと異なる場合、プッシュを拒否します...。
current
- 現在のブランチを同名のブランチにプッシュします。
関連
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] Git で現在のブランチ名を取得するには?
-
[解決済み] Git で現在のコミットのハッシュを取得する方法は?
-
[解決済み] 現在のGitブランチをmasterブランチにする
-
[解決済み] 警告: push.default は設定されていません。その暗黙の値は Git 2.0 で変更されています。
-
[解決済み】Git リポジトリに空のディレクトリを追加するには?
-
[解決済み】既存のGitブランチをリモートブランチに追従させる?
-
[解決済み】ブランチを指定せずにgit pushした場合のデフォルトの動作
-
[解決済み】Gitのワークフローとrebaseとmergeの質問
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】gitの「not something we can merge」エラーの解決方法
-
[解決済み] git: fatal: リモートリポジトリから読み取れませんでした。
-
[解決済み] git stashを元に戻す
-
[解決済み] git status に fatal: bad object HEAD と表示される。
-
[解決済み] git update-index --assume-unchanged <file> を元に戻す。
-
[解決済み] Gitのエラー「object file ... is empty」はどうすれば直せますか?
-
[解決済み] エラーです。リベースを使用してプルできません。あなたはステージングされていない変更を持っています
-
[解決済み] なぜ `--set-upstream` を常に実行する必要があるのですか?
-
[解決済み] 警告: push.default は設定されていません。その暗黙の値は Git 2.0 で変更されています。
-
[解決済み】Git - push.default の "matching" と "simple" の違いは何ですか?