ホーム >> | プログラミング >> | Git Tips >> | ベアリポジトリについて |
Gitにはリポジトリにベアリポジトリ(Bare repository)とノンベアリポジトリ(Non bare repository)がある。 ベアリポジトリには,作業用のファイルが含まれず,管理用のファイルのみになっている。 ベアファイルは主にサーバーに配置し,cloneされる側のリポジトリとして利用される。 ベアファイルは,大雑把に言ってノンベアリポジトリの中のrepository/.gitを取り出した(裸にした)ものに相当するので,ベアリポジトリと呼ばれているようだ。
ベアリポジトリを作成するには--bareオプションを付ければよい。
$ mkdir somerepo.git $ cd somerepo.git/ $ git init --bare
$ ls HEAD branches config description hooks info objects refsベアリポジトリにはリポジトリフォルダ名に.gitを付ける慣習があるそうなので,ここでもそれに従う。
すでに存在するリポジトリから,ベアリポジトリを作成するにはcloneにオプション--bareを付ければよい。
$ git clone --bare somerepo anotherrepo.git
ベアリポジトリに対してpushできるようにするために,receive-packとよばれる設定を有効にしておく必要がある。 有効にする方法は次の通り。
$ cd somerepo.git/ $ git config http.receivepack truesomerepo.git/configに次のように追記されている。
... [http] receivepack = true