サーバ間のsvnバージョンライブラリの移行作業
1190 ワード
これまでのコードは退役したパソコンにインストールされていたため、性能が十分ではなく、開発サーバが構築されていたため、すべてのsvnバージョンライブラリを新しい開発サーバに移行したいと考えています.以下は自分の移行プロセスです.参考にしてください.
古いサーバ:202.0.0.4
新しいサーバ:202.0.0.28古いサーバのsvnディレクトリの下に入ります.svnのルートディレクトリはsvnrootで、すべてのプロジェクトコードはこのディレクトリの下にあります.一括移行を実現するために、shellスクリプトを書きました.
実装される機能は、ディレクトリの下のすべてのプロジェクトをsumpdirディレクトリにパッケージ化し、プロジェクトの名前にdump接尾辞を付けることです.スクリプトを実行します.
2.新しいサーバーに入って、まず古いサーバーを梱包したdumpファイルをコピーして、私が直接使ったscpコマンド:
3.依然として新しいディレクトリの下で、すべてのdumpファイルをsvnバージョンライブラリにインポートする準備をして、依然としてshellスクリプトを書いた.
このスクリプトの機能は、dumpdirのdumpファイルの名前(dump接尾辞なし)をプロジェクト名として取り出し、プロジェクトのバージョンライブラリを作成し、dumpファイルをインポートすることです.スクリプトを実行してから終了を待つだけです.
4.移行が完了したかどうかを確認し、ディレクトリを探して、次のsvn coを実行します.svn://202.0.0.28/project.成功
簡単じゃないの?svnとshellの強さに感嘆せざるを得ない
古いサーバ:202.0.0.4
新しいサーバ:202.0.0.28
#!/bin/sh
cd svnroot
for name in `ls`
do
echo $name
sudo svnadmin dump /home/svnroot/$name > ../dumpdir/$name.dump
done
~
実装される機能は、ディレクトリの下のすべてのプロジェクトをsumpdirディレクトリにパッケージ化し、プロジェクトの名前にdump接尾辞を付けることです.スクリプトを実行します.
2.新しいサーバーに入って、まず古いサーバーを梱包したdumpファイルをコピーして、私が直接使ったscpコマンド:
sudo scp [email protected]:/home/dumpdir/* ./dumpdir/
3.依然として新しいディレクトリの下で、すべてのdumpファイルをsvnバージョンライブラリにインポートする準備をして、依然としてshellスクリプトを書いた.
#!/bin/sh
cd dumpdir
for name in `ls`
do
str=${name%.*}
mkdir -p ../svn/$str
sudo svnadmin create ../svn/$str
sudo svnadmin load ../svn/$str < /usr/dumpdir/$name
done
このスクリプトの機能は、dumpdirのdumpファイルの名前(dump接尾辞なし)をプロジェクト名として取り出し、プロジェクトのバージョンライブラリを作成し、dumpファイルをインポートすることです.スクリプトを実行してから終了を待つだけです.
4.移行が完了したかどうかを確認し、ディレクトリを探して、次のsvn coを実行します.svn://202.0.0.28/project.成功
簡単じゃないの?svnとshellの強さに感嘆せざるを得ない