差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
programming:python:mercurial:web:start [2012/02/04 19:21]
yuki
— (現在)
ライン 1: ライン 1:
-====== Web経由のアクセス設定 ====== 
- 
-<​note>​ 
-  * Ubuntu Server 10.04 
-  * apt-getした場合のmercurialは1.4.3 
-  * apache2は導入済みと仮定 
-  * Mercurial Webサイトのディレクトリ : /var/hg/ 
-  * プロジェクトAのリポジトリ : /​var/​hg/​project-a 
-  * プロジェクトBのリポジトリ : /​var/​hg/​project-b 
-</​note>​ 
- 
-  - 必要モジュールの入手 
-    * <​code>​apt-get install mercurial libapache2-mod-wsgi</​code>​ 
-  - cgiの設置 
-    * <​code>​mkdir /var/hg 
-cd /var/hg 
-cp /​usr/​share/​doc/​mercurial/​examples/​hgwebdir.cgi . 
-chmod 700 hgwebdir.cgi</​code>​ 
-  - apacheの設定 
-    * <​code>​vi /​etc/​apache2/​sites-available/​default 
- 
-    ScriptAlias /hg /​var/​hg/​hgwebdir.cgi 
-    <​Directory /var/hg> 
-        AuthType Basic 
-        AuthName "​Mercurial repositories"​ 
-        AuthUserFile /​etc/​apache2/​hgusers 
-        Require valid-user 
-    </​Directory></​code>​ 
-    * Digest認証の場合は、AuthTypeをDigestに。 
-  - apacheの認証設定 
-    * <​code>​htpasswd -mc /​etc/​apache2/​hgusers admin 
-htpasswd -m /​etc/​apache2/​hgusers onechan 
-htpasswd -m /​etc/​apache2/​hgusers imoto</​code>​ 
-    * Diegst認証の場合は、こんな感じか。 
-      * <​code>​htdigest -m /​etc/​apache2/​hgusers '​Mercurial repositories'​ admin</​code>​ 
-    * Ubuntuのapache2はauth_digestが有効になっていないかもしれないので、必要なら有効にする。 
-      * <​code>​a2enmod auth_digest enable</​code>​ 
-  - apacheの再起動 
-    * <​code>​service apache2 restart</​code>​ 
-  - リポジトリの作成 
-    * <​code>​mkdir /​var/​hg/​project-a 
-cd /​var/​hg/​project-a 
-hg init 
-mkdir /​var/​hg/​project-b 
-cd /​var/​hg/​project-b 
-hg init</​code>​ 
-  - リポジトリの登録設定 
-    * <​code>​cd /var/hg 
-echo "​[collections]"​ >> hgweb.config 
-echo "/​var/​hg/​project-a = project-a"​ >> hgweb.config 
-echo "/​var/​hg/​project-a = project-b"​ >> hgweb.config 
-chown -R www-data.www-data /​var/​hg</​code>​ 
-    * 1.6以降では、[collecttions]は[paths]と書く必要があると思う。 
-  - おしまい。 
-    * 例えばこんな。 
-    * <​code>​hg clone http://​www.example.com/​hg/​project-a</​code>​ 
- 
-  * おまけ 
-    * こういうのを書いて、引数に付けた名前のプロジェクトをクイックスタート!ってな感じで。 
-    * <​code>#​!/​bin/​sh 
-mkdir /​var/​www/​hg/​$1 
-cd /​var/​www/​hg/​$1 
-hg init 
-cd .hg 
- 
-echo "​[web]"​ >> hgrc 
-echo "​push_ssl = false" >> hgrc 
-echo "​allow_push = root" >> hgrc 
-echo "​contact = root@example.com"​ >> hgrc 
-echo "name = $1" >> hgrc 
-echo "​description = None" >> hgrc 
- 
-echo "/​var/​www/​hg/​$1 = $1" >> /​var/​www/​hg/​hgweb.config 
- 
-chown -R www-data.www-data /​var/​www/​hg/​$1 
- 
-ls -l /var/www/hg | grep $1</​code>​ 
- 
  
programming/python/mercurial/web/start.1328350878.txt.gz · 最終更新: 2012/02/04 19:21 by yuki
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0