質問: git使いだしで早速ハマってしまいました。 いろいろ調べたのですが、どれも当てはまらず。。。 どなたかご経験ございましたらご回答頂けますと幸いです。 なお、質問させて頂くにあたり、足りない情報などございましたらご教示下さい。 ### 前提・実現したいこと git pull origin master リモートリポジトリからプルしたい ### 発生している問題・エラーメッセージ [ec2-user@ip-xx-xx-xx-xxx .git]$ git pull origin master **fatal: This operation must be run in a work tree** branchの状態 [ec2-user@ip-xx-xx-xx-xxx .git]$ git branch master * primary third [ec2-user@ip-xx-xx-xx-xxx .git]$ git branch -a master * primary third remotes/origin/HEAD -> origin/master remotes/origin/add_design_pages remotes/origin/add_omniauth_function remotes/origin/add_text_of_help remotes/origin/introduction_of_rspec remotes/origin/master remotes/origin/modify_design_and_bug remotes/origin/modify_design_of_function_of_users ※補足 masterブランチにcheckoutしても同様になります。 その他、以下のコマンドも同様になります。 **git status** **git checkout [branch]** **git branch -D [branch]** でも同様の警告がでます。 【試したこと】 http://d.hatena.ne.jp/yukichanko/20110308/1299579419 masterbranchは初期ではbearとして作成され、bearブランチにはworktreeがないから使えないという記事を見つけ、masterブランチの削除を試みましたが同様の警告でできませんでした。 どのような事象が想定されますでしょうか? どうかよろしくお願い致します。m(__)m
回答: `git pull`というのは本質的に`git fetch`+`git merge`です。そして、`fetch`はbareリポジトリでも問題なくできますが、`git merge`はワークツリーがないとできません。 リモートがあるのでしたら、`git clone`してbareでないリポジトリを作成しなおす、というのがいちばんスッキリするかもしれません。