[さくらVPS(CentOS)]Gitolite で git ホスティングの準備 - suVeneのアレ

[さくらVPS(CentOS)]Gitolite で git ホスティングの準備

gl-easy-install スクリプトがなくて、gl-system-install に変わってた?のかよくわからないが、gitolite をさくら VPS に設定した手順。基本的には、本家の quick install はてなブックマーク数 の手順どおりだが。

準備

Git のバージョンは、1.6.2 以上。perl, OpenSSH は準備できているものとする。
作業用端末で新しい認証鍵(公開鍵・秘密鍵のペア)を作成する。

$ ssh-keygen -t rsa
$ Generating public/private rsa key pair.
Enter file in which to save the key (/User/suVene/.ssh/id_rsa): /User/suVene/.ssh/suVene

注意事項として、普段 ssh でログインとは別に作成しておく必要がある。gitlite のインストールに設定する認証鍵でターミナルでログインすると、git 管理用に操作が制限されてしまうので、レンタルサーバなどだとログイン不可能になってしまう。

管理用ユーザー作成

普段通りに作業用端末からログインし、管理用ユーザを作成する。
/tmp/id_rsa.pub は、ログインユーザ(作業用端末)の公開鍵。

$ sudo adduser gitolite --shell /bin/bash --home-dir /home/gitolite -c 'gitloite'
$ sudo passwd gitolite
$ sudo su - gitlite
$ cd
$ mkdir -p .ssh -m 0700
$ cp /tmp/id_rsa.pub .ssh/authorized_keys
$ chmod 0600 .ssh/authrized_keys
$ exit

gitolite インストール

まず、パスが上手くとおらないことがあるので、以下を .bashrc に記述しておく。

export PATH="$HOME/bin:$HOME/gitolite/bin:/usr/local/bin:/usr/bin:/bin"

gitolite をクローンして、スクリプト叩くだけ。
suVene.pub は、「準備」で作成した、新しい公開鍵。

$ ssh gitolite@vps.example.com
$ git clone git://github.com/sitaramc/gitolite
$ gitolite/src/gl-system-install -q
Usage:
    gl-system-install [bin-dir conf-dir hooks-dir]

Requires all 3 arguments or none.  All arguments supplied must be absolute
paths.  The following defaults are used if arguments are not supplied:

    as normal user: $HOME/bin, $HOME/share/gitolite/conf, $HOME/share/gitolite/hooks
    as root:        /usr/local/bin, /var/gitolite/conf, /var/gitolite/hooks
$ gitolite/src/gl-system-install $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks
$ gl-setup -h
Usage:
  gl-setup [-q] [-q] [YourName.pub]       # ssh mode
  gl-setup [-q] [-q] [YourName]           # http mode

Please see 'appendix d' in doc/install.mkd for more.  (Online at
  http://sitaramc.github.com/gitolite/install.html#gl-setup)
$ gl-setup -q suVene.pub
creating gitolite-admin...
Initialized empty Git repository in /home/gitolite/repositories/gitolite-admin.git/
creating testing...
Initialized empty Git repository in /home/gitolite/repositories/testing.git/
[master (root-commit) 8fe8e24] gl-setup -q suVene.pub
 2 files changed, 8 insertions(+), 0 deletions(-)
 create mode 100644 conf/gitolite.conf
 create mode 100644 keydir/suVene.pub

これでインストール完了。
作業用端末の ~/.ssh/config に以下の設定を追記。

Host gitolite
    User gitolite
    Hostname vps.example.com
    IdentityFile /Users/suVene/.ssh/{新しい秘密鍵}

管理用リポジトリ

git clone gitolite:gitolite-admin

あとは、このリポジトリに対してユーザの追加や読み書き設定を commit して push すればよい。かなり細かい制御ができるのだが、それは、「参考 URL」などを参考に。

以上、おわり。

参考URL

スポンサーリンク
スポンサーリンク

コメント

  1. suVene より:

    “[さくらVPS(CentOS)]Gitolite で git ホスティングの準備 – suVeneのアレ” http://t.co/y79Yugpz

コメントをどうぞ

メールアドレスが公開されることはありません。