Gitolite gitweb
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Gitolite gitweb

on

  • 4,090 views

3/31 開発環境構築勉強会用資料です。

3/31 開発環境構築勉強会用資料です。

Statistics

Views

Total Views
4,090
Views on SlideShare
3,622
Embed Views
468

Actions

Likes
0
Downloads
10
Comments
0

4 Embeds 468

http://d.hatena.ne.jp 448
http://manji602.hatenablog.com 11
http://webcache.googleusercontent.com 8
http://cache.yahoofs.jp 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Gitolite gitweb Presentation Transcript

  • 1. 開発環境構築勉強会資料 -gitolite,gitweb編- Jun HASHIMOTO @manji602
  • 2. gitolite,gitwebとは● gitolite – githubの個人版 – バージョン管理・ユーザ管理● gitweb – gitoliteをWebで可視化
  • 3. 環境構築● 開発環境(リモート) – さくらのVPS512(CentOS 6.2) – Server:nginx 1.012 – PHP:php-fpm● 開発環境(ローカル) – Mac book pro early 2011 – OS:Snow Leopard
  • 4. 環境構築-gitolite(1)● 作業はローカルとリモート(さくら)でそれ ぞれ設定すべき点があります! – ローカルはL:リモートはR:と表記します● Gitのインストール – L:brew install git – R:yum install git● Gitolite用のユーザ作成 – R:sudo /usr/sbin/useradd --shell /bin/bash --home /home/gitolite gitolite
  • 5. 環境構築-gitolite(2)● GitoliteユーザのSSH設定 – R:/etc/ssh/sshd_configを設定 ● AllowUser *** gitolite(<-追加) ● ただし、AllowUserを設定している場合 – R:SSHの再起動 ● sudo /etc/init.d/sshd restart● Gitoliteアクセス用公開鍵作成 – L:cd ~/.ssh;ssh-keygen -t – ファイル名はgitoliteで
  • 6. 環境構築-gitolite(3)● 公開鍵をリモートにコピー – L:scp -p 10022 /.ssh/gitolite.pub ssh_user@example.com:~/ ● ※sshのポートを変更している場合● 公開鍵の設定 – R:chown gitolite:gitolite gitolite.pub – R:sudo mv gitolite.pub /home/gitolite/● Gitoliteのインストール – 作業ユーザをgitoliteへ変更 – R:sudo su – gitolite
  • 7. 環境構築-gitolite(4)● Gitoliteのソースをgithubから取ってくる – R:mkdir ~/tmp; cd ~/tmp – R:git clone git://github.com/sitaramc/gitolite● Gitoliteのインストール – R: ~/tmp/gitolite/src/gl-system-install – R: gl-setup ~/gitolite.pub
  • 8. 環境構築-gitolite(5) ● ローカルの接続設定 – L:~/.ssh/configの編集Host gitolite.example.comHostName example.comUser gitolitePort 10022IdentityFile ~/.ssh/gitolite ● リモートから設定用リポジトリを取得 – L:mkdir ~/tmp; cd ~/tmp – L:git clone gitolite.example.com:gitolite- admin
  • 9. リポジトリの追加@gitolite● Gitolite-admin/conf/gitolite.confへ追記repo test-repo //test-repoというリポジトリを追加RW+ = gitolite hogehoge //全権限をgitolite,hogehogeへ付与R = hugahuga //読み込みの権限をhugahugaへRW = piyopiyo //読み込み+書き込みの権限をpiyopiyoへ//@allと設定すると全てのユーザへ権限を付与できる● Gitolite-adminの変更を反映 – L:git add . – L:git commit -m "ADD: test-repo" – L:git push
  • 10. ファイルの追加・コミット @gitolite● 追加したリポジトリをローカルへ – L:git clone gitolite.example.com:test-repo● ファイルの追加・コミット – L:cd test-repo – L:touch readme.txt | echo "hogehoge" >> readme.txt – L:git add . – L:git commit -m "ADD: readme.txt – L:git push origin master
  • 11. ユーザの追加@gitolite● 追加したいユーザの公開鍵をインポート – L:cd ~/tmp/gitolite-admin – L:cp ~/hogehoge.pub ~/tmp/gitolite- admin/keydir – L:git add . – L:git commit -m "Add User: hogehoge" – L:git push
  • 12. 環境構築-gitweb(1)● こちらはリモートのみで完結します● インストール – yum install gitweb libfcgi-perl libfcgi- procmanager-perl ● cgiを動かすためlibfcgi絡みもインスコ● /etc/gitweb.confの編集 – our $projectrootのコメントアウトを解除 し、”/home/gitolite/repositories/”へ
  • 13. 環境構築-gitweb(2)● nginxの設定(/etc/nginx/conf.d/virtual.conf) – 名前ベースのバーチャルホストでgitweb のページを管理する ● Webサーバ:http://yourdomain.com/ ● Gitweb: http://subdomain.yourdomain.com/
  • 14. 環境構築-gitweb(3)server { listen *:80; server_name subdomain.maindomain.com; location / { root /var/www/git; //documentrootを/var/www/gitに作る index gitweb.cgi; } location ~ gitweb.cgi$ { fastcgi_pass 127.0.0.1:8999; //php-fpmで127.0.0.1:9000を使用済なため fastcgi_index gitweb.cgi; include fastcgi_params; }}
  • 15. 環境構築-gitweb(4)● gitweb.fcgiの導入 – nginxでgitwebを動かすために は、gitweb.fcgiを追加する必要がある ● https://gist.github.com/985059 – cd /var/lib/gitolite //ここにgitweb.fcgiを置く – sudo chown gitolite:gitolite gitweb.fcgi – sudo chmod +x gitweb.fcgi● gitweb.fcgiの常駐化 – sudo -u gitolite /var/lib/gitolite/gitweb.fcgi --fcgi-socket=127.0.0.1:8999 --cgi- bin=/usr/share/gitweb/gitweb.cgi &
  • 16. 環境構築-gitweb(5)● http://subdomain.maindomain.com/へアク セスすると、以下のような画面が出るは ずです!
  • 17. 参考ページ● http://www.atmarkit.co.jp/fjava/rensai4/devt ool26/devtool26_1.html● http://totekan.jp/server/sakura-vps- settings-git-with-gitolite/● http://d.hatena.ne.jp/Yudoufu/20110626/13 09066814● http://d.hatena.ne.jp/manji602/20120323/1 332468525