前まではwebサーバにSubversionサーバを兼任させていたわけですが、ルータの内側にNAS4Freeを入れた機会に内部Git鯖立ててそちらに乗り換えようかという。
Gitサーバの構築
Gitoliteのインストール
- NAS4Freeへコンソールからログインし、Gitoliteをインストール
1
2
|
$ pkg_add -r gitolite2
|
gitユーザの作成
WebGUIからユーザ登録する(adduser使えない)
- メニュー -> アクセス -> ユーザとグループ ->
- グループ・・・「git」グループを作成
- ユーザ・・・「git」ユーザを作成(グループは「git」) ※ログインシェルを設定しておく
- プライマリグループを「git」
- グループの追加で「ftp」を選択
- ログインシェルを「csh」
- ホームディレクトリを「/home/git」
FTPサーバ設定(SSH鍵転送のために)
WebGUIから設定する
SSHサーバ設定
WebGUIから設定する
SSHキーファイル転送
- FTPで「git」に接続する
- ホームにSSH公開鍵を「git.pub」という名前で格納
- ホームに「bin」フォルダを作成
- ホームに「.cshrc」ファイルを作成
1
2
|
set path=($HOME/bin $path)
|
Gitoliteのセットアップを行う
- NAS4Freeへコンソールからログインし、下記コマンドを実行
1
2
3
4
5
6
|
$ su git
$ cd /home/git
$ git clone git://github.com/sitaramc/gitolite
$ gitolite/install -ln
$ gitolite setup -pk $HOME/git.pub
|
リポジトリの作成
管理用リポジトリをclone
1
2
|
$ git clone git@サーバ:gitolite-admin
|
リポジトリの追加(myreposを追加)
1
2
3
4
5
6
7
8
9
|
repo gitolite-admin
RW+ = git
repo testing
RW+ = @all
repo myrepos
RW+ = git
|
※下2行を追加
gitolite-adminをcommitしてpush
1
2
|
$ git commit -a
$ git push
|
myreposをclone
1
|
$ git clone git@サーバ:myrepos
|
これで開発できる。
参考URL