2009-10-04 13 views
6

SVNサーバーをバージョン1.5.5からバージョン1.6.5にアップグレードしようとしています。実際のアップグレードでは問題ありませんが、実際のリポジトリのアップグレードについては少し混乱しています。Subversionサーバーを1.5.5から1.6.5にアップグレードする - dump/upgrade/reload、正確な手順は?

私はそれがかなりsvnadmin upgradeを使用するよりも、リポジトリをダンプし、リロードすると良いでしょうことを、いくつかの場所(herehere)で読みました。私はダンプして、サーバをアップグレードしてから、ダンプをロードすることを前提としています - しかし、ロードする前に古いファイルをリポジトリからクリアする必要がありますか?もしそうなら、これを行う最良の方法は何ですか?

バージョンコントロールシステムを徹底的に取り締める前に、誰かが私にすばやくステップバイステップを渡すことができたら、本当に役に立ちます!

乾杯、 マーク

答えて

10

quick step-by-stepは、SubversionのFAQにあります:

  1. はsvnserveのは、Apache、およびリポジトリにアクセスされる可能性があります何かをシャットダウンします。
  2. svnadmin dump /path/to/repository > dumpfile.txt(svnadminのバージョンXを使用)。
  3. mv /path/to/repository /path/to/saved-old-repository
  4. Subversion Yにアップグレードします(つまり、Yをビルドしてインストールし、Xを置き換えます)。
  5. svnadmin create /path/to/repository(svnadminのバージョンYを使用)。
  6. svnadmin load /path/to/repository < dumpfile.txt、ここでもsvnadminのバージョンYを使用しています。
  7. 古いリポジトリから新しいリポジトリにオーバーフックスクリプトなどをコピーします。 Subversionの本の中で
  8. などの再起動svnserveを、アパッチ、

more details on dumping and loading。私はあなたがsubversion 1.6 release notesを勉強したと仮定します。

+0

はい、私はリリースノートをチェックしました - ありがとう、それはまさに私が探していたものでした。 –

+1

注意してください、それらのダンプは大きいです。あなたはsvn dumpで--deltasオプションを使うことができますが、これはダンプファイルのサイズをやや小さくします。それは遅いですが、代わりに、あなたは、より効率的になります - デルタなしで、飛行中にダンプをgzipすることができます。 – RedGlyph

+0

注目 - ありがとう! –

1

あなたがそのようにやろうとしているなら、あなたはおそらく、再びそれをバックロードレポを、ダンプ、アップグレード、削除および再作成します。

私はこれまでにアップグレードを使用して問題を抱えてきたとは言えませんが、最適ではないレポ構造に終わることがあります。

+0

アップグレードを使用することもできますか? –

+0

それが特に大きいか複雑なレポでない限り、私は何をしますか?ダンプとロードには長い時間がかかります。 –

+0

私は同意します。ただし、アップグレードする前にバックアップを取っておく必要があります。ダンプを作成することは、バックアップを作成する1つの方法です。 – sbi

4

いいえ、アップグレードするためにダンプ/ロードする必要はありません。1.6は、svnadmin upgradeを使用して簡単にアップグレードできるように特別に設計されています。私はそれをした、それは働いた、私は幸せです。

release notesは、リポジトリをダンプ/ロードする必要はないと明示しています。

とにかくバックアップをとって(ちょうどの場合)、推奨アップグレードを実行します。私は、将来のバックアップを早くし、SVNがより速く実行できるように、repoファイル(svadmin pack)をパックします。

+0

リリースノートでは、(http://subversion.tigris.org/svn_1.6_releasenotes.html#bdb-forward-deltas)も述べています。「古い[BDB]リポジトリの最も最適化された状態を達成したい場合は、リポジトリのダンプとロードを実行する必要があります。質問の中のリンクも見てください。 –

+0

誰もBDBリポジトリを使うべきではありません。もしあなたがそうするなら、あなたはまだrepo ....をダンプしてFSFSのものにロードする必要があります:) – gbjbaanb