この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
目次
Git Logoは、Jason Long が作成および提供した作品であり、Creative Commons 3.0 Attribution ライセンスに記載された条件に従って使用しています。
gitolite3によるソース管理
ソース管理ツールは多人数で開発を行うときの必需品アイテムと言ってもよい存在です。幅広い開発者に使われているツールとして「git」や「subversion」が有名で、その中でも gitlite3(git) についての新しいリポジトリの作成方法を確認してみます。
リポジトリの作り方
リポジトリを作成するコマンド
となります。
リポジトリを作成するときは、事前にgit内のrepositoriesフォルダの中に移動しましょう。
リポジトリ作成の実行サンプル
では実際に「hogehoge.git」を作成するときの実行サンプルを記載します。
1 2 3 4 5 6 7 8 9 10 |
gitolite3@localhost:/home/gitolite3# cd repositories gitolite3@localhost:/home/gitolite3/repositories# git init --bare hogehoge.git Initialized empty Git repository in /var/lib/gitolite3/repositories/hogehoge.git/ gitolite3@localhost:/home/gitolite3/repositories# ls -la total 12 drwx------ 6 gitolite3 gitolite3 4096 Jul 1 15:57 . drwx------ 33 gitolite3 gitolite3 4096 Jul 1 10:26 .. drwx------ 7 gitolite3 gitolite3 4096 Jul 15 15:58 hogehoge.git |
リポジトリに対するユーザーへの権限付与
では作成したリポジトリにアクセスできるユーザーを設定しましょう。
ユーザーへのアクセス権の付与は「gitolite-admin.git」を利用します。
「gitolite-admin\conf\gitolite.conf」にあるファイルをテキストツールで開きます。
リポジトリに対するユーザーへの権限付与は
RW+ = (読み込み・書き込み権限を付与するユーザー)
と記述します。「R」が読み込み権限で「W」は書き込み権限となります。
権限付与の記述サンプル
hogehoge リポジトリに対して、hogehogeuser へ読み込みと書き込み権限を付与したサンプルです。
1 2 |
repo hogehoge RW+ = hogehogeuser |
権限付与に失敗したとき
権限付与に失敗すると「git clone」を実行したときに下記のエラーが発生することがあります。そのときは「gitolite-admin」を再確認して、権限の設定に誤りがないかを確認しましょう。
% git clone gitolite3@localhost:hogehoge.git hogehoge
Cloning into ‘hogehoge’…
FATAL: R any hogehoge hogehogeuser DENIED by fallthru
(or you mis-spelled the reponame)
fatal: Could not read from remote repository.Please make sure you have the correct access rights
and the repository exists.
git へのユーザーの追加
念のためgitへのユーザーの追加方法も簡単に記載します。
ユーザーの追加も「gitolite-admin.git」を利用します。「gitolite-admin\keydir\(ユーザー名).pub」にユーザーの公開鍵を追加することで、ユーザーを追加することができます。「gitolite.conf」に記載するユーザー名は、ファイル名(ユーザー名).pubを指します。
1 2 3 4 5 6 7 8 9 |
C:\gitolite-admin\keydir>dir C:\gitolite-admin\keydir のディレクトリ 2018/09/02 08:06 <DIR> . 2018/09/02 08:06 <DIR> .. 2017/10/31 11:00 396 admin.pub 2018/09/02 11:10 394 hogehogeuser.pub 2 個のファイル 790 バイト 2 個のディレクトリ 4,847,648,768 バイトの空き領域 |
さいごに
開発者によっては、大きいプロジェクトまたは単一のプロジェクトを開発し続けるので、git の新しいリポジトリの作成方法は意外と忘れがちです。「あれっ、どうやってリポジトリを作るのか忘れた」というときに本記事がお役に立てれば幸いです。