gitでpullできない時の確認ポイント

2020年10月8日

テクノロジー

eyecatch 自分の人生もバージョン管理したいな〜と思っている、ユゲタです。 過去の栄光をタグ付けしたり、失敗した事をreset --hardしたりできたら、便利なのに・・・ こりゃ、電脳化しすぎているね。

発生したgitエラー

そんな便利なgitを使っている時に、以下のようなエラーメッセージが出た。 $ git pull origin master > 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. メッセージ冒頭を直訳すると、
分岐を調整する方法を指定せずにプルすることは 次のいずれかを実行して、このメッセージを抑制できます。 次のプルの前のいつかコマンド
rebaseしろという内容なのは、わかるが、これまで普通に使えていたのにいきなりこのメッセージが出て、焦った!!!

解決方法はいたってシンプル

このエラーの原因が分かりました。 サーバーにsshでログインしてgit操作をしているんですが、nginx権限であるソースフォルダにアクセスするために、作業者ユーザーがアクセスして、sudo suで管理者権限になり、その後、nginx権限に変更して作業するのだが、なにかのタイミングでsu権限の状態でgit pullを行っていたらしく、.gitの中のファイル権限が、rootとnginxでバラバラになっていました。 その後、nginxでpullしようとしても、ファイル権限が無いので、このエラーが出たようである。 とりあえず、root権限になって、以下のコマンドを打ち込んで事なきを得た。 $ chown nginx:nginx -R ./* gitのエラー表示が的を得ていないという件でした。 何かの役に立てば幸いです。

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。