2009-05-30 22 views
1

私は特に重要ないくつかのファイルがある場合、SVNは2つのリポジトリにコミットできますか?同じファイルを2つのSVNリポジトリにコミットできますか?

2台のマシンに2つのSVNリポジトリをセットアップできるので、1台のマシンに問題がある場合は、常にバックアップがあります。

(Tortoiseまたはコマンドラインの場合に最適です)。ありがとう。

答えて

1

さて、あなたはポストコミットフックを使用して別のリポジトリにリポジトリ全体(あるいは単に重要なファイル)をコミットすることができます。これは、すべてを2つのリポジトリに委ねるという覚えの痛みを取り除き、エレガントなソリューションです。

1

activacのアイデア(svnsyncを使用)を拡張すると、SVNフックスクリプト(例:post-commit)でトリガすることによって、各コミット後にsvnsyncを実行させることができます。こうすることで、各コミット後にセカンダリコピーがプライマリコピーと同期化され、バックアップが常に最新の状態に保たれます。

1

リポジトリのデータが失われることが心配な場合は、自動バックアップを実行することが可能です。 "svnadmin dump"コマンドはそれに最適です。

私はすべての私のリポジトリのダンプを作成するには、このスクリプトを使用します。

#!/bin/bash 

DATE=`date "+%F"` 
BACKUPDIR=/var/backup 

# dump subversion repos. 
# all subversion projects are in /usr/local/svn 
for REPODIR in /usr/local/svn/* 
do 
    REPONAME=`basename $REPODIR` 
    TARGET=svndump-$REPONAME-$DATE.gz 
    echo backing up svn repository $REPODIR to $TARGET 
    svnadmin dump $REPODIR | gzip > $BACKUPDIR/$TARGET || exit 1 
done 

このスクリプトは、cronジョブから実行されます。 rsyncコマンドを追加して、これらのダンプを別のサーバーにコピーすることができます。

関連する問題