Subversion〜SCMツール
Mercurialを断念。
とりあえずSubversion。
とりあえずSubversion。
インストール
RHELだとrpmファイルがありお手軽にできる。- 必要なファイル
- apr-0.9.4-24.5.i386.rpm
- apr-devel-0.9.4-24.5.i386.rpm
- apr-util-0.9.4-21.i386.rpm
- apr-util-devel-0.9.4-21.i386.rpm
- mod_dav_svn-1.1.4-2.ent.i386.rpm
- subversion-1.1.4-2.ent.i386.rpm
- subversion-devel-1.1.4-2.ent.i386.rpm
- subversion-perl-1.1.4-2.ent.i386.rpm
- httpd-2.0.52-22.ent.i386.rpm
- インストール
rpm -ivh *.rpm
これで適切な順番でインストールしてくれる。もし不足しているファイルがあれば指摘してくれるので、インストールする。 - httpd.confの設定
conf.d/subversion.confを読み込むようにする。Apacheをソースからインストールした場合は、/etc/httpd/cond.f/subversion.conf を INSTALLDIR/conf/ 配下にもっていき、そのファイルをIncludeする。 - subversion.confの修正
- レポジトリURLを決める。http://<server名>/repos とする場合は <Location /repos> とする。
- レポジトリの実パスを決める。たとえば /var/www/svn 。
決めたら、まずApacheが読み書きできるようにする。
chown -R nobody:nobody /var/www/svn
次に<Location /repos> 中に書く。
SVNParentPath /var/www/svn - パスワードファイル設定
subversion.confの中でBasic認証をするように設定されているので、対応するパスワードファイルを作成する。作成にはApache付属のhtpasswdを利用する。
htpasswd -b -c /etc/httpd/.svnpasswd username password (最初にファイルを作成する場合)
htpasswd -b /etc/httpd/.svnpasswd username password (ユーザを追加する場合) - レポジトリの作成
cd /var/www/svn
svnadmin repo1
chown -R nobody:nobody repo1
作成したレポジトリはApacheが書き込みできるように所有者を変えておく。忘れると利用できない。
- httpd.confの確認
apachectl -t で確認。問題があるとここでエラーが表示される。- エラー例(1)
/usr/lib/libsvn_fs_base-1.so.0: undefined symbol: db_create
ApacheをBerkeleyDB対応なしでコンパイルしていることが原因。Apacheのconfigure実行時に、--with-berkeley-db をつける。
- エラー例(1)
- 起動後、アクセスし確認
http://<ホスト名>:<ポート番号>/svnrepos/repo1 にアクセスし表示されればOK。
- Windowsクライアントのインストール~TortoiseSVNをインストール。なんといっても使いやすい。ここからダウンロード。msi形式のインストーラなので、画面の指示に従って行えば簡単に終了。
インストール後、コンピュータの再起動を要求された場合は、指示通り実行する。
使い方
サーバがLinux、クライアントがWindows、という利用形態を想定。- サーバ側でレポジトリを作る。
cd /var/www/svn
svnadmin <レポジトリ名>
ブラウザでアクセス確認。http://<サーバ名>:<ポート番号>/svnrepos/<レポジトリ名>> - クライアント側で、SVN管理対象のファイルをレポジトリに追加する。フォルダ配下にまとまっていると便利。
- フォルダを右クリックし、TortoiseSVN→Importをクリックする。
- 「URL of repository」にサーバ上のレポジトリのURLを入力し「OK」を押す。エラーが出なければ完了。
(注意)最初にクリックしたフォルダはレポジトリに入らない。その1階層下から。
- 確認。フォルダ/ファイルを右クリックし、TortoiseSVN→Repo-browserを起動。レポジトリのURL を入力すると、レポジトリの中身が表示される。
- checkout。作業用のフォルダを作成し、右クリック。Tortoise-SVN→Checkout。URLを入力する。エラーが出なければOK。フォルダのアイコンがSVNのアイコンに変わったら「フォルダがSVN管理下になった」という証。
- 編集。checkoutしたファイルを編集する。
- commit。編集が完了したらcommitを実行。ファイル・フォルダを右クリックし、TortoiseSVN→Commitをクリック。必要に応じてcommit messageを入力しOKをクリックする。エラーが表示されなければ完了。
- 変更確認。commitしたファイルを右クリックし変更箇所を確認してみる。TortoiseSVN→Show log を実行。変更日やcommitメッセージを確認できる。
2008年04月22日(火) 11:41:55 Modified by ysshn65535