cvs/ki.nu | Namazu 開発 | http://cvs.namazu.org/namazu/

Namazu 開発のため、手元にも cvs の保管庫を作る

(現在試行錯誤中なので、あまり当てにしないで下さい) 2001/09/12
http://cvs.namazu.org/namazu/
    checkout,update
   ↓
                import                       
公式保管庫の鏡    ->    自分の保管庫        checkout ->    作業域
                                             <- commit
/e/cvs-mirror           /automount/nazuha/cvs         /e/cvs-work

の三つの場所を使う。三つ目はその時の気分でどこでもいい
以下に書いてある通りにすると、今はうまく行っていない。 一番最初の tag が打たれていない

○1 namazu anon cvs repository から stable-2-0 を持出 checkout

setenv CVS_RSH ssh
cd /e/cvs-mirror
cvs -d :pserver:guest@cvs.namazu.org:/storage/cvsroot login
cvs -d :pserver:guest@cvs.namazu.org:/storage/cvsroot co -r stable-2-0 namazu

○2 $CVSROOT を自分用の保管庫に変更する。(必要なら) cvs init

(大元 の cvs 側の $Header: /e/u/j/local-repository/htdocs/www/software/cvs/namazu.shtml,v 1.1.1.1 2008/03/12 10:53:07 makoto Exp $ $rcsid 等をそのまま保存するため) -ko (keyword substitution off) を付けておく
cp  ~/.cvsrc-ko ~/.cvsrc
setenv CVSROOT /automount/nazuha/cvs
cvs -d $CVSROOT init

○3 (自分用の保管庫に) 輸入 (import)

import すると 現目録(current-directory)の内容を -> $CVSROOT に輸入する
cd /e/cvs-mirror/namazu
cvs import -I \! -I CVS -I .cvsignore -m "namazu 2001/09/11 stable-2-0" namazu STABLE s_2001-09-11
「-I \! -I CVS -I .cvsignore 」 が必要なのは次のように無視されるのを防いだ上で、 不要な .cvsignore を持って来ないようにするため。 I namazu/tests/data/ja/plain.txt.Z

上で使った引数について
repositorynamazu
vendor tag STABLE
release tag s_2001-09-11
vendor tag とは要するに枝の名前

○4 (日本語用の) を作る (rtag)

# (pwd はどこでもいい, $CVSROOT に効く。ただし CVSROOT が見えているとうまくない。
cvs rtag -b MOREJ namazu
  いとじゅんさんのところを見ると次のように -r が付いている。
cvs rtag -b -r STABLE MOREJ namazu 
-r 無 (cvs rtag -b MOREJ namazu) の場合も
-r 付 (cvs rtag -b -r STABLE MOREJ namazu) の場合も
makoto@u ■21:09:06/010911(...cvs-work/namazu)> cvs status -v ChangeLog
===================================================================
File: ChangeLog         Status: Up-to-date

   Working revision:    1.1.1.1 Tue Sep 11 12:00:31 2001
   Repository revision: 1.1.1.1 /automount/nazuha/cvs/namazu/ChangeLog,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        MOREJ                           (branch: 1.1.1.1.2)
        s_2001-09-11                    (revision: 1.1.1.1)
        STABLE                          (branch: 1.1.1)
cvs rtag -b -r 1.1 MOREJ namazu の場合(これはうまくないと思う)
makoto@u ■13:22:30/010913(/e/cvs-work)> cvs stat -v namazu/ChangeLog
===================================================================
File: ChangeLog         Status: Up-to-date

   Working revision:    1.1.1.1 Thu Sep 13 04:21:17 2001
   Repository revision: 1.1.1.1 /automount/nazuha/cvs/namazu/ChangeLog,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        MOREJ                           (branch: 1.1.2)
        s_2001-09-11                    (revision: 1.1.1.1)
        STABLE                          (branch: 1.1.1)

○5 日本語側を持出す

cvs co -r MOREJ namazu
makoto@u ■13:31:15/010913(/e/cvs-work)> cvs stat -v namazu/ChangeLog
===================================================================
File: ChangeLog         Status: Up-to-date

   Working revision:    1.1     Thu Sep 13 04:28:27 2001
   Repository revision: 1.1     /automount/nazuha/cvs/namazu/ChangeLog,v
   Sticky Tag:          MOREJ (branch: 1.1.2)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        MOREJ                           (branch: 1.1.2)
        s_2001-09-11                    (revision: 1.1.1.1)
        STABLE                          (branch: 1.1.1)

makoto@u ■13:31:22/010913(/e/cvs-work)> 

○6 日本語の変更をする

cd namazu
zcat /home/ftp/pub/namazu/2.0.7-more-japanese-20010907.gz | patch -s -p1
find . -name \*.orig | perl -nle unlink
# (更に小変更など)

○7 commit

上記変更で、特に譜の追加がなければ commit でもいい。 大量に追加があるような時は import の方が楽のはず。
makoto@u ■16:31:03/010913(/e/cvs-work)>  cvs commit -m "2001-09-07 more japanese patch applied" namazu
cvs commit: Examining namazu
....
Checking in namazu/po/ja.po;
/automount/nazuha/cvs/namazu/po/ja.po,v  <--  ja.po
new revision: 1.1.1.1.2.1; previous revision: 1.1.1.1
done
Checking in namazu/template/NMZ.foot.ja;
/automount/nazuha/cvs/namazu/template/NMZ.foot.ja,v  <--  NMZ.foot.ja
new revision: 1.1.1.1.2.1; previous revision: 1.1.1.1
done
Checking in namazu/template/NMZ.head.ja;
/automount/nazuha/cvs/namazu/template/NMZ.head.ja,v  <--  NMZ.head.ja
new revision: 1.1.1.1.2.1; previous revision: 1.1.1.1
done
Checking in namazu/template/NMZ.result.normal.ja;
/automount/nazuha/cvs/namazu/template/NMZ.result.normal.ja,v  <--  NMZ.result.normal.ja
new revision: 1.1.1.1.2.1; previous revision: 1.1.1.1
done
Checking in namazu/template/NMZ.result.short.ja;
/automount/nazuha/cvs/namazu/template/NMZ.result.short.ja,v  <--  NMZ.result.short.ja
new revision: 1.1.1.1.2.1; previous revision: 1.1.1.1
done
Checking in namazu/template/NMZ.tips.ja;
/automount/nazuha/cvs/namazu/template/NMZ.tips.ja,v  <--  NMZ.tips.ja
new revision: 1.1.1.1.2.1; previous revision: 1.1.1.1
done
makoto@u ■16:31:16/010913(/e/cvs-work)> 
makoto@u ■16:31:16/010913(/e/cvs-work)> cvs status -v namazu/ChangeLog
===================================================================
File: ChangeLog         Status: Up-to-date

   Working revision:    1.1.1.1 Thu Sep 13 07:27:41 2001
   Repository revision: 1.1.1.1 /automount/nazuha/cvs/namazu/ChangeLog,v
   Sticky Tag:          MOREJ (branch: 1.1.1.1.2)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        MOREJ                           (branch: 1.1.1.1.2)
        s_2001-09-11                    (revision: 1.1.1.1)
        STABLE                          (branch: 1.1.1)

○8 tag を付けておく

cvs tag j_2001-09-07 namazu
makoto@u ■16:33:17/010913(/e/cvs-work)> cvs status -v namazu/po/ja.po
===================================================================
File: ja.po             Status: Up-to-date

   Working revision:    1.1.1.1.2.1     Thu Sep 13 07:30:44 2001
   Repository revision: 1.1.1.1.2.1     /automount/nazuha/cvs/namazu/po/ja.po,v
   Sticky Tag:          MOREJ (branch: 1.1.1.1.2)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        j_2001-09-07                    (revision: 1.1.1.1.2.1)
        MOREJ                           (branch: 1.1.1.1.2)
        s_2001-09-11                    (revision: 1.1.1.1)
        STABLE                          (branch: 1.1.1)

○9 差分を作る

例えば
makoto@u ■16:35:28/010913(/e/cvs-work)> cvs diff -u -r STABLE -r MOREJ namazu 

(1) 作業域と repository の差分

cd /e/cvs-work
# namazu の名前を namazu-2.0.7 にしておいて
ln -s namazu namazu-2.0.7
cvs diff -u  namazu-2.0.7
# ってやると patch -s -p0 出来る形式になる。

(2) repository の中の二つの tag 同士

cvs rdiff -u -r s_2001-09-11 -r j_2001-09-07 namazu
(ってやると -ko を付けていない場合、うるさい)
cvs rdiff -u -r s_2001-09-11 -r j_2001-09-11 namazu | grep ^\+\+
# で余計なものが含まれていないか確認

cvs rdiff -u -r s_2001-09-11 -r j_2001-09-11 namazu >! /tmp/2.0.7-more-japanese

○11 鏡を更新してから

cvs -d :pserver:guest@cvs.namazu.org:/storage/cvsroot update -dP namazu

○12 次の import

は MAIN = STABLE に入れればいい。
setenv CVSROOT /automount/nazuha/cvs
cd /e/cvs-mirror/namazu
cvs import -I \! -I CVS -I .cvsignore -m "namazu 2001/09/14" namazu STABLE s_2001-09-14
....
No conflicts created by this import
○ import した直後に cvs status -v して見る
makoto@u ■7:56:49/010914(/e/cvs-work)> cvs status -v namazu/po/ja.po
===================================================================
File: ja.po             Status: Up-to-date

   Working revision:    1.1.1.1.2.2     Thu Sep 13 07:41:14 2001
   Repository revision: 1.1.1.1.2.2     /automount/nazuha/cvs/namazu/po/ja.po,v
   Sticky Tag:          MOREJ (branch: 1.1.1.1.2)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        s_2001-09-14                    (revision: 1.1.1.2)
        j_2001-09-13-real               (revision: 1.1.1.1.2.2)
        j_2001-09-13                    (revision: 1.1.1.1.2.1)
        j_2001-09-07                    (revision: 1.1.1.1.2.1)
        MOREJ                           (branch: 1.1.1.1.2)
        s_2001-09-11                    (revision: 1.1.1.1)
        STABLE                          (branch: 1.1.1)
        s_2001-09-14                    (revision: 1.1.1.2)
が増えている。

○ STABLE 枝の変更を 作業域に取込む

試すだけ
cvs -n update -j STABLE namazu > /tmp/a
本当に
cvs    update -j STABLE namazu > /tmp/a
何だか、いくつか $Id: namazu.shtml,v 1.1.1.1 2008/03/12 10:53:07 makoto Exp $B$@$1La$C$F$7$^$C$F$$$k ? 最初の時に stable-2-0 でなくて main を取出してしまったかな。
それとも今回 main を取出してしまったか。
cvs diff -u namazu 
...
Index: namazu/THANKS
===================================================================
RCS file: /automount/nazuha/cvs/namazu/THANKS,v
retrieving revision 1.1.1.1
:cvs diff: Diffing namazu/conf
cvs diff: Diffing namazu/doc
cvs diff: Diffing namazu/doc/en
diff -u -r1.1.1.1 THANKS
--- namazu/THANKS       2001/09/13 07:27:41     1.1.1.1
+++ namazu/THANKS       2001/09/13 23:01:40
@@ -1,4 +1,4 @@
-$Id: namazu.shtml,v 1.1.1.1 2008/03/12 10:53:07 makoto Exp $
+$Id: namazu.shtml,v 1.1.1.1 2008/03/12 10:53:07 makoto Exp $
 
 We have been trying to keep track of everyone who
 contributes to Namazu.  Please contact us if you know anyone
Last Update
19:53:07 03/12/08
claudebot
Apache/2.0.65 (Unix) mod_ssl/2.0.65 OpenSSL/1.0.1g DAV/2 PHP/5.4.26
Count.cgi
(since 2001/09/11)