git pull 時に、You can replace “git config” with “git config –global” to set a default preference for all repositories. | クズリーマンのカス備忘録

git pull 時に、You can replace “git config” with “git config –global” to set a default preference for all repositories.

git logo git
スポンサーリンク

事象

$ git pull
warning: Pulling without specifying how to reconcile divergent branches is
discouraged. You can squelch this message by running one of the following
commands sometime before your next pull:

git config pull.rebase false # merge (the default strategy)
git config pull.rebase true # rebase
git config pull.ff only # fast-forward only

You can replace "git config" with "git config --global" to set a default
preference for all repositories. You can also pass --rebase, --no-rebase,
or --ff-only on the command line to override the configured default per
invocation.

git pullしたらこんなの出た。

git pullの処理は正常に行われる。

原因

pull --rebase や pull --ff-only のふるまいを期待しているにも関わらずそれらの指定をしないまま pull してしまったユーザが、意図しないマージコミットを作ってしまうケースを避けるための警告のようです。

参考

 

対応

迷ったら

git config pull.rebase false

でいいかなー。

 

上記の参考サイト様の下部に3パターンの意味が記載されている。

–rebase したいときは実行時に明示するスタイルがいい
こちらを設定すると、デフォルトの pull の挙動のままになります。

$ git config pull.rebase false

 

実行時の –rebase なしで pull –rebase になってほしい
$ git config pull.rebase true

 

差分があったら fast forward してほしい (fast forward できないときは失敗してほしい)
$ git config pull.ff only

 

 

コメント

タイトルとURLをコピーしました