2008.12.13バックアップとして、もしくはバックアップからの復旧時間が嫌な場合は、リポジトリのミラーリングとしてsvnsyncがSVN1.4から使えるようになっている。今回はsvnsyncの動作を確認してみる。Vista、SVN1.5.3。本当はリモートのリポジトリにミラーリングしたいんだけど、ローカルApacheで我慢。Apacheは↓みたいな設定でURLを別にしている。SVNのBasic認証もかけてみた。valid-user</Location>「http://localhost:8888/svn/repo01」と「http://localhost:8888/svnmirror/repo01m」を同期させる。スポンサーリンクミラー側のリポジトリ設定まずはミラー先のリポジトリを作成する。repo01m次に「C:\fujihara\svn_mirror\repo01m\hooks」にある「pre-revprop-change.tmpl」を「pre-revprop-change.bat」、「start-commit.tmpl」を「start-commit.bat」にリネーム。Windowsの場合はbatでUnixだとtmpl拡張子を削除かshとかでもいいかも。バッチファイルの中身を以下に修正。この記述によって、svnsyncuserからしかアクセスができないようになるので、ミラー側に送られてきたコミットやリビジョンのログメッセージ変更を防ぐ。次にミラー側のリポジトリを初期化。it」と怒られるので注意。0.svnsyncuserはsvnsync用のユーザをApacheで指定したファイル(今回はpasswd)に追加する。こればっかりは平文になりますなー。最後にsvnsyncコマンドでレプリケーション開始。3.これでばっちりレプリケーションができた。ローカルでのミラーリングローカルのディスクにsvnsyncしてみる。svnsyncはURI?でレプリケーション先を設定できるので、リモートであろうがローカルであろうが意識しなくていい。ローカルディスクにリポジトリを配置し、NFS上にレプリケーションを作成する・・・という構成にも可能。file:///c:/fujihara/svn_mirror/repo01mlリモート&リモートでもできた。http://localhost:8888/svnmirror/repo01mrマスタとなるリポジトリの設定ミラー側では以下の設定を行う。今回はrepo01リポジトリを複製しようとしているので、「C:\fujihara\svn_root\repo01\hooks\post-commit.bat」を作成する。--sync-password=passwordと記述してコミット毎に同期させる。コミット毎が2回走るのに近いので、軽くするんだったらcronとかに同じ内容を書けば、まとめて同期することも可能。source-userとsource-passwordはなくても動くので謎。OKとか)になったり、ロック状態におちいるので注意。by・・・を参照のこと。コミット毎に同期も可能だし、あとでsvnsyncコマンドをたたいてまとめて同期も可能。ミラー側のリポジトリのコミットやログ変更もはじいてくれた。ソフトウェア開発の実現に向けて奮闘中。週末に娘と息子とお昼寝しながら世界のビーチや離島を旅する夢を見る。お仕事募集中!daipresentsをフォローする858翻訳しました。赤ちゃんの肌にやさしいおしりふき10種類を夫婦でガチ比較してみた2015.08.252020.01.08新生児用の紙おむつ6種類を男目線でガチ比較してみた2014.06.112020.01.08ヒートテック捨ててモンベル製アンダーウェア「ジオラインL.W.、M.W.、EXP.」を試してみた2016.12.062020.01.083年使ったRedmineの使い方について共有したい10のこと2011.04.062020.01.082016年アジアベストビーチに選ばれたミャンマーのガパリに行ってきた。t("").html(tocplus.visibility_show).text():default:t(this).html(tocplus.visibility_hide),t.cookie&&(o?t.cookie("tocplus_hidetoc","1",{expires:30,path:"/"}):t.cookie("tocplus_hidetoc",null,{path:"/"})),t("#toc_container").css("width",tocplus.width).removeClass("contracted"),t("ul.toc_list").show("fast")}})}}});タイトルとURLをコピーしました。