warning: remote HEAD refers to nonexistent ref, unable to checkout.
自宅に設置しているgitサーバーからcloneして、外で作業をしようと思ったのだが、git cloneしたところ、上記のようなエラーが出てた。
調べた所、GITサーバーにmasterリポジトリが存在しない場合、そのリポジトリをcloneした直後にこのエラーメッセージが表示され、対象ディレクトリ内は.gitフォルダ以外は何も無く、空っぽの状態になっている。
焦らなくても、データは来ているハズ。
まず、branchが存在するか確認
$ git branch -a
remotes/origin/encode
remotes/origin/getImage
上記のように、「remotes/origin/***」という風にデータが存在するが、デフォルトであるはずの「master」ブランチが無いので
初期設定のcheckoutができないというエラーなのです。
***部分が対象のブランチであれば、対象をcheckoutするだけでいい。
$ git checkout remotes/origin/getImage
こんな感じで完了です。
さらに下記で確認
$ git branch -a
* (HEAD detached at origin/getImage)
remotes/origin/encode
remotes/origin/getImage
すると、対象のディレクトリにファイルがわっさわっさと現れたはずだ。
とりあえず、masterを作っておいた方が、いいだろう。
※ただし、リポジトリ管理者がいる場合は、意図的な場合もあるので、指示者に従うこと。
masterを作って一件落着
$ git branch master
$ git branch -a
* (HEAD detached at origin/getImage)
master
remotes/origin/encode
remotes/origin/getImage
元のブランチもローカル用のモノを作っておこう
$ git branch getImage
$ git checkout getImage
* getImage
master
remotes/origin/encode
remotes/origin/getImage
仕組みが分かってしまえば怖くはないが、ファイルが空の状態はかなりビビる。
でも、今どきのgit使いではこの辺は当たり前のお作法だろう。
頑張れオレ!!
0 件のコメント:
コメントを投稿