注文の多いXOOPS屋 TOP現在のブログ旧スタッフblog アーカイブ
このページは 2007〜2008 年に公開していた「株式会社RYUS スタッフblog」のアーカイブです。内容は当時のものです。

subversionリポジトリを自動で作るスクリプト

2008/03/27 03:08   halt   カテゴリ: software ソフトウェア

今日からスタッフBLOGに参加する事になりました。haltです。

Subversionなどのバージョン管理システムでリポジトリを追加する時、
マニュアルから手順を見て覚えても、リポジトリを追加する時なんてそう毎日あるものでもないのですぐに手順を忘れてしまいます。
毎回調べるのも面倒だし、手順に違いがでて他のリポジトリと構成を変えてしまうと使う時にいちいち構成をチェックする必要があるので
以下のようにシェルスクリプトにしておいて、初期設定をまとめて実行するようにしています。

#!/bin/sh
if [ -z $1 ]; then
        echo \"Usage:$0 [project_name]\"
        exit
fi
sudo svnadmin create --fs-type=fsfs /var/lib/svn/$1
sudo chmod -R 777 /var/lib/svn/$1/db
sudo chmod -R 777 /var/lib/svn/$1/dav
svn co file:///var/lib/svn/$1 /tmp/buf_svn
svn mkdir /tmp/buf_svn/trunk /tmp/buf_svn/tags /tmp/buf_svn/branches
cd /tmp/buf_svn
svn ci -m \"build base\"
rm -rf /tmp/buf_svn

このコードをmake_repos.shとして保存し、chmod +xで実行フラグをつけて、引数に作りたいリポジトリの名前をつけて実行します。
すると、指定した名前でリポジトリを作成し、

  • branches
  • tag
  • trunk

のディレクトリまで自動で追加します。あとはsvn coでtrunkをとりだし、importするだけです。

よく使う操作をスクリプト化する事も便利ですが、リポジトリの追加のようなたまにしか行わない操作もスクリプト化しておく事で忘れてしまった手順を思い出す必要がなくなって便利です。