自分の人生もバージョン管理したいな〜と思っている、ユゲタです。
過去の栄光をタグ付けしたり、失敗した事を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のエラー表示が的を得ていないという件でした。
何かの役に立てば幸いです。
0 件のコメント:
コメントを投稿