- 確定安裝好 apache2
dpkg –l | grep apache2, 若沒裝則用 sudo apt-get install apache2 安裝 - 變身成 root
$ sudo su - 建立 hg repositories 和 cgi-bin 的存放路徑
# mkdir /var/hg
# mkdir /var/hg/cgi-bin
# mkdir /var/hg/repos - 複製 hgwebdir.cgi 到指定位置, 並更改權限為可執行
# cp /usr/share/doc/mercurial/examples/hgwebdir.cgi /var/hg/cgi-bin/
# chmod a+x /var/hg/cgi-bin/hgwebdir.cgi - 建立 /var/hg/cgi-bin/hgweb.config, 寫入以下內容
[collections]
/var/hg/repos/ = /var/hg/repos/ - 設定 apache
- 建立 /etc/apache2/sites-available/hg, 寫入以下資訊, 一行而已
ScriptAlias /hg "/var/hg/cgi-bin/hgwebdir.cgi" - 啟用該設定
# a2ensite hg
# /etc/init.d/apache2 reload
- 建立 /etc/apache2/sites-available/hg, 寫入以下資訊, 一行而已
- 開啟瀏覽器, 輸入 http://localhost/hg 應該就可以看到 mercurial 的畫面
若要 allow push, 有兩個設定要調整
- 確定 apache 有 /var/hg/repos/ 的寫入權限
# chown –R www-data.www-data /var/hg/repos/ - 在 allow push 的 repository 的 .hg 目錄下編輯 hgrc 檔
[web]
push_ssl = false
allow_push = *
想要更進一步控制權限, 要自行設定 .htaccess!
keywords: mercurial, hg, apache, ubuntu, scm
沒有留言:
張貼留言