さくらレンタルサーバーでGit管理ツールGitoliteの構築

Gitの管理ツールと言えば、Githubが一番有名だと思いますが、個人や小規模のプロジェクトなら、Bitbucketがおすすめです。
なぜなら、無料で使うには、Githubはソースコードを公開しなければいけないのに対して、Bitbucketではリポジトリーをプライベートに設定できて、公開しなくて良いからです。

それなら別に自前のGit管理ツールなんかいらないじゃん〜となりますが、はい、基本的には問題ありません。^^;
私Bitbucketを5年程使ってきましたが、接続できないとなったのは1〜2回でしたし、ソースコードが消えたような問題もありませんでしたので、これは問題ないと言っていいでしょう。
つまり、ここの話は一日0.11%(2/(5*365))の確率で発生する問題の対策になります。^^b

ソース置くぐらいなら、VPSなどルート権限付のサーバーも必要なく、共用サーバーは十分だと思います。
サーバーにベタでリポジトリーを作り、そこにプッシュする手もありますが、Gitoliteのようなツールを使うと楽です。

参考1の公式インストール手順でも十分ですが、gitolite/install -ln ~/binすることで、bin/の中にgitoliteのリンクが生成されるだけで、クローンしたソースファイルを残さなくてはいけないのがあまり好きではなく、参考2の公式Githubのページに紹介された手順はおすすめです。

手順は以下になります。

  1. Gitolite管理者用のsshキーを生成
  2. Gitoliteのインストール
  3. Gitoliteのセットアップ

Gitolite管理者用のsshキーを生成

以下のコマンドでsshキーが生成されます。

ssh-keygen -t rsa -b 4096 -N '' -C "メールアドレス" -f ファイル名

ここの「-N ”」部分はパスフレーズをなしにするオプションですので、必要に応じて外しても問題ありません。

このキーファイルはローカルに作成したならば、公開鍵(ファイル名.pub)だけscpなどでレンタルサーバーにアップロードすれば良いです。
逆にサーバーで生成したら、秘密鍵(拡張子がない)をローカルにダウンロードする必要があると思います。

Gitoliteのインストール

レンタルサーバーにログインして以下のコマンドを実行します。

git clone https://github.com/sitaramc/gitolite
mkdir -p $HOME/bin
gitolite/install -to $HOME/bin

ここまでやれば、$HOME/binの下に以下のようなファイルが増えると思います。

VERSION		commands	gitolite-shell	syntactic-sugar
VREF		gitolite	lib		triggers

Gitoliteのセットアップ

ステップ1で準備した公開鍵のファイル名をgitkey.pubだとすれば良いです。

$HOME/bin/gitolite setup -pk gitkey.pub

そうすることで、$HOME/.ssh/authorized_keysの一番最後に以下のようなものが追加されるはずです。

# gitolite start
command="/home/レンタルサーバーユーザー名/gitolite/src/gitolite-shell 管理者用sshキー",no-port-forwarding
...(中略)...
# gitolite end

さくらインターネットさんのレンタルサーバーは既に$HOME/binを$PATHに入れてますので、再ログイン(もしくはsource $HOME/.cshrcかな?!)すればgitoliteコマンドが使えるようになるはずです。

終わりに

gitoliteコマンドの確認できたら、サーバーからクローンしたgitoliteディレクトリはもう不要ですので、消しても問題ありません。
(いえいえ、是非消してください。)

ここまでがレンタルサーバーにおいてのgitolite構築手順です。結構簡単でしたね。

使い方に関しては別途書く予定です!^^;

参考:
  1. quick install and setup
  2. sitaramc/gitolite
コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です