cvs at ki.nu | commit | import | start w/o import | branch | cvs2 @ki.nu

TNF nandra CVS

TNF nandra 追っかけと枝の作り方

    (-> tar) (local patch)
 1.1     1.2        1.3
  +---------+--------+-- 幹
   \         \
    \         +--- nandra (1.2.2) cvs tag -b nandra で作る
     \
      +------ TNF(1.1.1)     最初の import
1.1 から 1.2 は macppc-03xxxx を上書きする。

最近の自動化した shell は次のところにある。 しかし、まだ問題が残っている。(20031213) http://cvsweb.ki.nu/mef/nandra/make-repository.sh

実際の作業

$CVSROOT = /e/u/cvsroot
setenv CVSROOT /e/u/cvsroot
保管庫の初期化 (init)
mkdir $CVSROOT
cvs -d $CVSROOT init
import 1.1.1
  1. co (na 版)
    cvs -d /e/c/CVSup/main co -D 20030504-UTC src >& co-20030504-UTC
    
  2. import に不要なものを消す
    find src -name CVS -type d -exec rm -rf '{}' \;
    
  3. import
    ttyp3:makoto@harry  14:01:00/030517(...20030504-UTC/src)> \
    cd src
    cvs -d $CVSROOT import -m 'TNF import' -ko  -I \! src TNF utc_20030504 > & ! ../import-log
    
cvs co
他のところに行って、持出して作業してから commit するため、まず checkout
cd ..
mkdir checkout
cd checkout
cvs -d $CVSROOT co -ko src >& ../co-log
1.1 -> 1.2
cd src
tar zxf /a/j/nandra/macppc-030503.tar.gz
cvs -n update | grep ^\? > ../list
sed 's/\?/cvs add/' ../list > add.sh
sh add.sh
最後の三行は、ts 版に新たに追加されたもの ( そういうものが 46 くらいある) が無視されないようにするため。

実はこれでは directory ごと追加されたようなもの arch/powerpc/libkern についてはうまく行かない。手動で追加。

commit (1.2)
ttyp3:makoto@harry 14:41:30/030517(...checkout/src)>
cvs commit -ko -m 'nandra 030503' >& ../commit-log
cvs status -v
(単なる確認)
ttyp2:makoto@harry  18:20:58/030518(...checkout/src)> cvs status -v  sys/arch/powerpc/tools/chrpicon/ppmtochrpicon/Makefile
===================================================================
File: Makefile          Status: Up-to-date

   Working revision:    1.2     Thu Dec 20 17:01:28 2001
   Repository revision: 1.2     /e/u/cvsroot/src/sys/arch/powerpc/tools/chrpicon/ppmtochrpicon/Makefile,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      -ko

   Existing Tags:
        utc_20030504                    (revision: 1.1.1.1)
        TNF                             (branch: 1.1.1)
tag -b
枝を作る
ttyp3:makoto@harry  14:51:14/030517(...checkout/src)> cvs tag -b nandra >& ../tag-log
(所要 17 分くらい)
patches
ttyp3:makoto@harry  15:12:28/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/20030210/1
ttyp3:makoto@harry  15:12:57/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/20030210/2
ttyp3:makoto@harry  15:12:59/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/20030210/4
ttyp3:makoto@harry  15:13:01/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/20030210/5
ttyp3:makoto@harry  15:13:02/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/20030210/7
ttyp3:makoto@harry  15:13:07/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/20030210/8
ttyp3:makoto@harry  15:13:20/030517(...checkout/src)> patch -s -p0 < ~/n/macppc/build.sh/adb-20021109 
                                                      patch -s -p0 < ~/n/macppc/build.sh/config.bfd-20030420 
tag
cvs tag m_20030503ts >& ../tag-503ts

その他

-ko
追っかけをしながら、外のものと diff を取ることが多い場合は -ko しておいた方がいい と思っている。
*.old
nbmake: don't know how to make tmac.doc.old. Stop
のように言われることがある。 これは 何も考えない import は *.old を捨ててしまうので、 それら捨てないように -I \! とする 必要がある。
 To avoid ignoring any files at all
(even those ignored by default), specify `-I !'.
ここに書いてある方法で build.sh が完走した。
2003/08/22 の日記から

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 2003/05/17)