- ベストアンサー
SubVersionのバックアップ方法
- SubVersionのリポジトリを定期的にバックアップする方法について
- Windows2000ServerとSubVersion 1.6.4. + Apache HTTP Server 2.2の環境でのバックアップ方法
- dumpファイルを使用して差分バックアップを行う方法と、自動バックアップのスケジューリング方法について
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
バッチファイルでやるとなると…少々面倒かも知れませんね… なんらかのスクリプト言語使った方がいいような気もしますが…。 svnlook youngest リポジトリパス で、最新のリビジョン番号が取得できます。 svnlook date リポジトリパス で、指定したリビジョンのコミット日時が取得できるので、 リビジョンを一つずつ戻りながら日時を取得していく…という方法で 特定の日付のリビジョンも取得できるでしょう。 どちらかというと…バックアップ取得したときのリビジョン番号をどこかに記録しておいて、それを取得して使用する。 とかの方が楽かと…。 # Linuxとかならgrepやらのフィルタコマンドでsvnadminでダンプしたファイルからリビジョン番号取得するのも簡単なんですが…。
その他の回答 (1)
- Wr5
- ベストアンサー率53% (2173/4061)
>これをスケジューリングする方法が分かりません。 http://technet.microsoft.com/ja-jp/library/bb742547.aspx http://technet.microsoft.com/ja-jp/library/cc985299.aspx など…タスクスケジューラでできませんか?
補足
タスクスケジューラの使い方は知っています。 私が知りたいのは、サブバージョンでの差分バックアップを自動で行う方法です。 たとえば、履歴が日曜日までに5,000までたまっていたとします。 日曜日に、バージョン1~5,000までのリポジトリをフルバックアップします。 (このコマンドは固定でいいのでタスクスケジューラーでバッチファイルをキックするだけでいいと思います。) 月曜日に、履歴を、5,003まで更新したとします。 このとき、サブバージョンにて、5,001~5,003までの差分バックアップをとることになりますが、この5,001と5,003という数値をそもそもどのようにして取得するのかよく分かりません。
お礼
丁寧に教えてくれてありがとうございます。 >svnlook youngest リポジトリパス >で、最新のリビジョン番号が取得できます。 >svnlook date リポジトリパス >で、指定したリビジョンのコミット日時が取得できる コマンドで取得できたのですね。すごいです。ありがとうございます。 無知でスクリプトの作り方もよく分からないですが、とりあえずバッチファイルにて スクリプト作ってみたいと思います。
補足
svnlook youngest リポジトリパス のコマンドを使って、 バッチファイルによる、スクリプトを作成しました。 バックアップをとった後は、毎回「svnlook youngest」コマンドにて最新バージョンを取得し、値をとっておいて次回の差分バックアップの際に利用するしくみを作りました。 教えていただいたおかげで、無事解決しました。ありがとうございました。