Changes between Version 1 and Version 2 of TipAndDoc/project/trac/repository


Ignore:
Timestamp:
Jan 4, 2011 6:54:38 PM (13 years ago)
Author:
mitty
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TipAndDoc/project/trac/repository

    v1 v2  
    11[[PageOutline]] 
    22 
     3 * TracRepositoryAdmin  
     4 
     5 = Migration from a single-repository setup = 
    36 * #37 
    4  * TracRepositoryAdmin  
     7 * wiki:TracRepositoryAdmin#Migration 
     8 
     9 * 4 repositories and 2 tracs 
     10  * リポジトリとTracのリスト[[br]][[Image(svn-list.png, 33%)]] [[Image(single-list.png, 33%)]] 
     11  * Tracのリポジトリブラウザとタイムライン[[br]][[Image(single-browser.png, 33%)]] [[Image(single-timeline.png, 33%)]] 
     12 
     13 == step by step == 
     14 1. remove "repository_dir" from trac.ini 
     15  * diff -u /var/trac/lab/test/conf/trac.ini.20110101 /var/trac/lab/test/conf/trac.ini 
     16{{{ 
     17--- /var/trac/lab/test/conf/trac.ini.20110101   2011-01-01 15:24:22.593393957 +0900 
     18+++ /var/trac/lab/test/conf/trac.ini    2011-01-02 19:46:06.503404153 +0900 
     19@@ -14,4 +14,3 @@ 
     20 [trac] 
     21 authz_file = /path/to/config/files/passwd/svn-authz.lab 
     22 authz_module_name = test 
     23-repository_dir = /var/svn/lab/test 
     24}}} 
     25  * Tracのリポジトリブラウザとタイムラインから、エントリが消える[[br]][[Image(rm-repository_dir-browser.png, 33%)]] [[Image(rm-repository_dir-timeline.png, 33%)]] 
     26 1. add "[repositories]" to trac.ini 
     27  * diff -u /var/trac/lab/test/conf/trac.ini.20110101 /var/trac/lab/test/conf/trac.ini 
     28{{{ 
     29--- /var/trac/lab/test/conf/trac.ini.20110101   2011-01-01 15:24:22.593393957 +0900 
     30+++ /var/trac/lab/test/conf/trac.ini    2011-01-02 22:35:21.763411095 +0900 
     31@@ -11,7 +11,17 @@ 
     32 name = test 
     33 url = https://lab.mitty.jp/trac/test/ 
     34 
     35+[repositories] 
     36+lab.test.dir = /var/svn/lab/lab.test 
     37+lab.test.type = svn 
     38+lab.test.url = http://lab.mitty.jp/svn/lab.test/ 
     39+test.dir = /var/svn/lab/test 
     40+test.type = svn 
     41+test.url = http://lab.mitty.jp/svn/test/ 
     42+test2.dir = /var/svn/lab/test2 
     43+test2.type = svn 
     44+test2.url = http://lab.mitty.jp/svn/test2/ 
     45+ 
     46 [trac] 
     47 authz_file = /path/to/config/files/passwd/svn-authz.lab 
     48 authz_module_name = test 
     49-repository_dir = /var/svn/lab/test 
     50}}} 
     51  * resyncするまではリポジトリの情報が見れない[[br]][[Image(add-[repositories]-browser.png, 33%)]] 
     52 1. resync repositories 
     53  1. sudo trac-admin /var/trac/lab/test/ repository resync "*" 
     54{{{ 
     55Resyncing repository history for lab.test... 
     563 revisions cached. 
     57Resyncing repository history for test... 
     584 revisions cached. 
     59Resyncing repository history for test2... 
     602 revisions cached. 
     61Done. 
     62}}} 
     63  * resync後のリポジトリブラウザとタイムライン[[br]][[Image(resync-[repositories]-browser.png, 33%)]] [[Image(resync-[repositories]-timeline.png, 33%)]] 
     64  * それまでの「/trunk」ではアクセスが出来なくなる[[br]][[Image(resync-[repositories]-trunk.png, 33%)]] 
     65  * svn commitしても、リポジトリの情報は更新されない 
     66   * D:\tmp>svn ci lab.test -m " * mkdir 4 for lab.test" 
     67{{{ 
     68Adding         lab.test\trunk\4 
     69 
     70Committed revision 4. 
     71}}} 
     72   * 「lab.test」リポジトリはrevisionが「3」のまま[[br]][[Image(no-change-on-commit.png, 33%)]] 
     73 1. add ".alias = lab.test" to trac.ini 
     74  * diff -u /var/trac/lab/test/conf/trac.ini.20110101 /var/trac/lab/test/conf/trac.ini 
     75{{{ 
     76--- /var/trac/lab/test/conf/trac.ini.20110101   2011-01-01 15:24:22.593393957 +0900 
     77+++ /var/trac/lab/test/conf/trac.ini    2011-01-02 23:00:13.925906625 +0900 
     78@@ -11,7 +11,19 @@ 
     79 name = test 
     80 url = https://lab.mitty.jp/trac/test/ 
     81 
     82+[repositories] 
     83 
     84(snip) 
     85 
     86+test2.url = http://lab.mitty.jp/svn/test2/ 
     87+ 
     88+.alias = lab.test 
     89+ 
     90 [trac] 
     91 
     92(snip) 
     93}}} 
     94  * 「規定のリポジトリ」が表示される[[br]][[Image(add-.alias-browser.png, 33%)]] 
     95   * revisionも「4」に更新される 
     96  * 「/trunk」でのアクセスが復活する[[br]][[Image(add-.alias-trunk.png, 33%)]] 
     97 1. add ".hidden = true" 
     98  * diff -u /var/trac/lab/test/conf/trac.ini.20110101 /var/trac/lab/test/conf/trac.ini 
     99{{{ 
     100--- /var/trac/lab/test/conf/trac.ini.20110101   2011-01-01 15:24:22.593393957 +0900 
     101+++ /var/trac/lab/test/conf/trac.ini    2011-01-02 23:06:31.585907819 +0900 
     102@@ -11,7 +11,20 @@ 
     103 name = test 
     104 url = https://lab.mitty.jp/trac/test/ 
     105 
     106+[repositories] 
     107 
     108(snip) 
     109 
     110+ 
     111+.alias = lab.test 
     112+.hidden = true 
     113+ 
     114 [trac] 
     115 
     116(snip) 
     117}}} 
     118  * 「規定のリポジトリ」が表示されなくなる[[br]][[Image(add-.alias_.hidden-browser.png, 33%)]] 
     119  * 「/trunk」では、「規定のリポジトリ」の「/trunk」に今まで通りアクセスできる[[br]][[Image(add-.alias_.hidden-trunk.png, 33%)]] 
     120 1. change ".alias" to "test" from "lab.test" 
     121  * diff -u /var/trac/lab/test/conf/trac.ini.20110101 /var/trac/lab/test/conf/trac.ini 
     122{{{ 
     123--- /var/trac/lab/test/conf/trac.ini.20110101   2011-01-01 15:24:22.593393957 +0900 
     124+++ /var/trac/lab/test/conf/trac.ini    2011-01-02 23:08:53.633399243 +0900 
     125@@ -11,7 +11,19 @@ 
     126 name = test 
     127 url = https://lab.mitty.jp/trac/test/ 
     128 
     129+[repositories] 
     130 
     131(snip) 
     132 
     133+test2.url = http://lab.mitty.jp/svn/test2/ 
     134+ 
     135+.alias = test 
     136+ 
     137 [trac] 
     138 
     139(snip) 
     140}}} 
     141  * ".alias"を変更することで「規定のリポジトリ」が変更される[[br]][[Image(change-.alias-browser.png, 33%)]] [[Image(change-.alias-trunk.png, 33%)]] 
     142  * タイムラインには変化はない[[br]][[Image(change-.alias-timeline.png, 33%)]] 
     143 1. add post-commit to each repositories and symlink trac environment 
     144  1. sudo ln -s /path/to/config/files/svn/hooks/post-commit /var/svn/lab/lab/hooks/ 
     145  1. sudo ln -s /path/to/config/files/svn/hooks/post-commit /var/svn/lab/test/hooks/ 
     146  1. sudo ln -s /path/to/config/files/svn/hooks/post-commit /var/svn/lab/test2/hooks/ 
     147  1. sudo ln -s test /var/trac/lab/lab.test 
     148  1. sudo ln -s test /var/trac/lab/test2 
     149  * ln -sを使って、post-commitが正常に「test」を更新できるようにする 
     150  * 副作用として、「test」が三つ表示される[[br]][[Image(trac-env-symlink-list.png, 33%)]] 
     151 1. add .tracignore 
     152  1. sudo vim /path/to/config/files/trac/conf/lab.tracignore 
     153{{{ 
     154.* 
     155lab.test 
     156test2 
     157}}} 
     158  1. sudo ln -s /path/to/config/files/trac/conf/lab.tracignore /var/trac/lab/.tracignore 
     159  * .tracignoreを追加し、不必要なTracを一覧に表示させない[[br]][[Image(tracignore.png, 33%)]] 
     160  * 表示はさせないが、URLを知っていればアクセスは出来る 
     161 
     162 == test post-commit == 
     163 * post-commitにより、リポジトリの更新はTrac側に通知される 
     164  * D:\tmp>svn ci lab.test -m " * mkdir 5 for lab.test" 
     165{{{ 
     166Adding         lab.test\trunk\5 
     167 
     168Committed revision 5. 
     169}}} 
     170  * cat /var/trac/lab/test/log/svn-hooks-lab.test.log 
     171{{{ 
     172Changeset 5 added 
     173OK 
     174}}} 
     175  * 「lab.test」のrevisionが「5」に更新される[[br]][[Image(updated-by-post-commit.png, 33%)]]