Subversion

今まで1人で開発していた為同期の心配がなく、修正を加えるたびに myapp-YYYYmmdd-HHMMSS.tar.gz を作るという豪快な管理方法を取っていたのだが、引継ぎ要員を1人ガボして共同開発することになったので Subversion に改める。AWDwR 読書会@京都-0000 でリハビリして丁度良かった。
1人でも便利なのに何で使ってなかったんだろう? あー、インストール願い出すのが面倒だったからか。自由にできる実験環境ができて良かった。プログラマに権力を!

[dev@machine:~/tmp]$ mkdir /home/dev/svn
[dev@machine:~/tmp]$ svnadmin create /home/dev/svn
[dev@machine:~/tmp]$ ls ~/svn/
README.txt  conf/  dav/  db/  format  hooks/  locks/
[dev@machine:~/tmp]$ mkdir swa
[dev@machine:~/tmp]$ cd swa
[dev@machine:~/tmp/swa]$ mkdir trunk branches tags
[dev@machine:~/tmp/swa]$ cd ..
[dev@machine:~/tmp]$ tree .
.
`-- swa
    |-- branches
    |-- tags
    `-- trunk

4 directories, 0 files
[dev@machine:~/tmp]$ svn import file:///home/dev/svn -m "initial import SecretWebApp"
Adding         swa
Adding         swa/trunk
Adding         swa/branches
Adding         swa/tags

Committed revision 1.

ディレクトリ構造でいつも迷うのでメモするのです。1 リポジトリだとこんな感じかな。
開発ユーザーはみんなグループを dev にする。umask は 002。/home/dev に開発関連便利スクリプトを集約していこう。

[babie@machine:0]$ svn checkout file:///home/dev/svn/swa/trunk swa
Checked out revision 1.
[babie@machine:0]$ tree -a
.
`-- swa
    `-- .svn
        |-- README.txt
        |-- empty-file
        |-- entries
        |-- format
        |-- prop-base
        |-- props
        |-- text-base
        |-- tmp
        |   |-- prop-base
        |   |-- props
        |   |-- text-base
        |   `-- wcprops
        `-- wcprops

11 directories, 4 files

すわっ!