開発環境構築勉強会資料 -gitolite,gitweb編-    Jun HASHIMOTO       @manji602
gitolite,gitwebとは●   gitolite        –   githubの個人版        –   バージョン管理・ユーザ管理●   gitweb        –   gitoliteをWebで可視化
環境構築●    開発環境(リモート)      –   さくらのVPS512(CentOS 6.2)      –   Server:nginx 1.012      –   PHP:php-fpm●    開発環境(ローカル)      –...
環境構築-gitolite(1)●    作業はローカルとリモート(さくら)でそれ    ぞれ設定すべき点があります!      –   ローカルはL:リモートはR:と表記します●    Gitのインストール      –   L:brew i...
環境構築-gitolite(2)●    GitoliteユーザのSSH設定      –   R:/etc/ssh/sshd_configを設定              ●                  AllowUser *** gi...
環境構築-gitolite(3)●    公開鍵をリモートにコピー      –   L:scp -p 10022 /.ssh/gitolite.pub            ssh_user@example.com:~/           ...
環境構築-gitolite(4)●    Gitoliteのソースをgithubから取ってくる      –   R:mkdir ~/tmp; cd ~/tmp      –   R:git clone           git://gith...
環境構築-gitolite(5) ●     ローカルの接続設定           –    L:~/.ssh/configの編集Host gitolite.example.comHostName example.comUser gitoli...
リポジトリの追加@gitolite●    Gitolite-admin/conf/gitolite.confへ追記repo    test-repo //test-repoというリポジトリを追加RW+     =       gitolite...
ファイルの追加・コミット        @gitolite●    追加したリポジトリをローカルへ     –   L:git clone gitolite.example.com:test-repo●    ファイルの追加・コミット     ...
ユーザの追加@gitolite●    追加したいユーザの公開鍵をインポート     –   L:cd ~/tmp/gitolite-admin     –   L:cp ~/hogehoge.pub ~/tmp/gitolite-      ...
環境構築-gitweb(1)●    こちらはリモートのみで完結します●    インストール       –   yum install gitweb libfcgi-perl libfcgi-             procmanager-...
環境構築-gitweb(2)●    nginxの設定(/etc/nginx/conf.d/virtual.conf)       –   名前ベースのバーチャルホストでgitweb            のページを管理する          ...
環境構築-gitweb(3)server {        listen *:80;        server_name subdomain.maindomain.com;        location / {            roo...
環境構築-gitweb(4)●    gitweb.fcgiの導入       –   nginxでgitwebを動かすために            は、gitweb.fcgiを追加する必要がある               ●   https...
環境構築-gitweb(5)●    http://subdomain.maindomain.com/へアク    セスすると、以下のような画面が出るは    ずです!
参考ページ●   http://www.atmarkit.co.jp/fjava/rensai4/devt    ool26/devtool26_1.html●   http://totekan.jp/server/sakura-vps-   ...
Upcoming SlideShare
Loading in …5
×

Gitolite gitweb

4,639 views

Published on

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

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,639
On SlideShare
0
From Embeds
0
Number of Embeds
560
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Gitolite gitweb

  1. 1. 開発環境構築勉強会資料 -gitolite,gitweb編- Jun HASHIMOTO @manji602
  2. 2. gitolite,gitwebとは● gitolite – githubの個人版 – バージョン管理・ユーザ管理● gitweb – gitoliteをWebで可視化
  3. 3. 環境構築● 開発環境(リモート) – さくらのVPS512(CentOS 6.2) – Server:nginx 1.012 – PHP:php-fpm● 開発環境(ローカル) – Mac book pro early 2011 – OS:Snow Leopard
  4. 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. 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. 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. 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. 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. 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. 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. 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. 12. 環境構築-gitweb(1)● こちらはリモートのみで完結します● インストール – yum install gitweb libfcgi-perl libfcgi- procmanager-perl ● cgiを動かすためlibfcgi絡みもインスコ● /etc/gitweb.confの編集 – our $projectrootのコメントアウトを解除 し、”/home/gitolite/repositories/”へ
  13. 13. 環境構築-gitweb(2)● nginxの設定(/etc/nginx/conf.d/virtual.conf) – 名前ベースのバーチャルホストでgitweb のページを管理する ● Webサーバ:http://yourdomain.com/ ● Gitweb: http://subdomain.yourdomain.com/
  14. 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. 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. 16. 環境構築-gitweb(5)● http://subdomain.maindomain.com/へアク セスすると、以下のような画面が出るは ずです!
  17. 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

×