Ubuntu 12.04 Gitサーバー(後編)
前回の記事(Ubuntu 12.04 Gitサーバー(前編)) からの続きです。
以下の手順で進めます。(太字が今回の分)
- Git のインストール
- gitolite のインストール
- gitweb のインストール
- git-daemon-run のインストール
- おまけ(各サービスの確認)
3. gitwebをインストール
3-1. aptitude よりインストール
#インストールします。 $ sudo aptitude -y install gitweb
3-2. インストール環境の確認
#インストールされたパッケージの確認 $ dpkg -l | grep \\sgit ii git 1:1.7.9.5-1 fast, scalable, distributed revision control system ii git-man 1:1.7.9.5-1 fast, scalable, distributed revision control system (manual pages) ii gitolite 2.2-1 SSH-based gatekeeper for git repositories ii gitweb 1:1.7.9.5-1 fast, scalable, distributed revision control system (web interface)
3-3. gitwebの設定
gitweb.conf を編集し、保存します。(projectroot,projects_listを編集)
#viでconfを編集 $ sudo vi /etc/gitweb.conf
(元) $projectroot = "/var/cache/git"; #$projects_list = $projectroot; (先) $projectroot = "/home/gitolite/repositories"; $projects_list = "/home/gitolite/projects.list"; @stylesheets = ("/gitweb/static/gitweb.css"); $javascript = "/gitweb/static/gitweb.js"; $logo = "/gitweb/static/git-logo.png"; $favicon = "/gitweb/static/git-favicon.png";
gitweb ファイルを編集し、保存します。
#viでconfを編集 $ sudo vi /etc/apache2/sites-available/gitweb
Alias /git /usr/lib/cgi-bin <Directory /usr/lib/cgi-bin> Options ExecCGI AddHandler cgi-script cgi DirectoryIndex gitweb.cgi AllowOverride None Order allow,deny allow from all </Directory>
gitweb を有効化します。
#サイトを有効化します。 $ sudo a2ensite gitweb #Apacheサービスを再起動します。 $ sudo service apache2 restart
4. git-daemon-runをインストール
4-1. aptitude よりインストール
#インストールします。 $ sudo aptitude -y install git-daemon-run
4-2. インストール環境の確認
#インストールされたパッケージの確認 $ dpkg -l | grep //sgit ii git 1:1.7.9.5-1 fast, scalable, distributed revision control system ii git-daemon-run 1:1.7.9.5-1 fast, scalable, distributed revision control system (git-daemon service) ii git-man 1:1.7.9.5-1 fast, scalable, distributed revision control system (manual pages) ii gitolite 2.2-1 SSH-based gatekeeper for git repositories ii gitweb 1:1.7.9.5-1 fast, scalable, distributed revision control system (web interface)
4-3. git-daemon-runの設定
以下の様に編集し、保存します。(runを編集)
#viで設定ファイルを編集 $ sudo vi /etc/sv/git-daemon/run
(元) #!/bin/sh exec 2>&1 echo 'git-daemon starting.' exec chpst -ugitdaemon \ "$(git --exec-path)"/git-daemon --verbose --reuseaddr \ --base-path=/var/cache /var/cache/git (先) #!/bin/sh exec 2>&1 echo 'git-daemon starting.' exec chpst -ugitdaemon:gitolite \ "$(git --exec-path)"/git-daemon --verbose --reuseaddr \ --base-path=/home/gitolite/repositories /home/gitolite/repositories
git-daemon サービスを再起動します。
#サービスを再起動 $ sudo sv restart git-daemon #git-daemon stop でエラーが出る場合 $ sudo /usr/lib/git-core/git-daemon stop fatal: unable to allocate any listen sockets on port 9418 Ubuntuでは、svコマンドで操作すると再起動できました。 #sv でタイムアウトが出る場合 stop、startに分けて行うとokになりました。
5. おまけ(各サービスの確認)
インストールしたUbuntuからの接続
#sshプロトコル(gitlite) $ cd $ git clone gitolite@localhost:testing.git testing2 Cloning into testing2... Enter passphrase for key '/home/hoge/.ssh/id_rsa': (sshのパスワード) remote: Counting objects: 3, done. remote: Total 3 (delta 0), reused 0 (delta 0) Receiving objects: 100% (3/3), done. #gitプロトコル(git-daemon) $ git clone git://localhost/testing.git testing3 Cloning into testing3... remote: Counting objects: 3, done. remote: Total 3 (delta 0), reused 0 (delta 0) Receiving objects: 100% (3/3), done. #Webアクセス(gitweb) $ wget -nc -S http://localhost/git/ $ view index.html #確認したファイルの後始末 $ rm -rf testing2/ $ rm -rf testing3/ $ rm index.html
ちなみに Windows環境からの接続は以下の様に確認します。
#msysgit(ssh)で取得する場合 git clone ssh://gitolite@server:port/testing.git #Tortoise(gitプロトコル)で取得する場合 git://server/testing.git #Tortoise(sshプロトコル)で取得する場合 ssh://gitolite@server:port/testing.git
記事リンク
Ubuntu 12.04 サーバー版 LTS
コメント (0)
Trackbacks (0)
コメントを残す
トラックバック