LoginSignup
1
2

More than 3 years have passed since last update.

svn更新中にエラーが発生して途中で止まるので『更新→クリーンアップ』を自動化する

Posted at

実現したいこと

どんなに大きなデータでもエラーで止まることなく、svn更新を成功させたい!

エラー内容

TortoiseSVNで行う更新の途中で「~is already locked lease execute the 'Cleanup' command」とエラーメッセージが表示され、クリーンアップを行ってから再び更新を行うも、同じエラーが発生してしまう。

更新〜クリーンアップの自動化手順

  1. 普段はTortoiseSVNを使ってGUIで直感的に操作してる君も、svnのコマンドをコマンドラインで利用できるようにするために以下のリンクで「Apache Subversion command line tools」をダウンロードしましょう。
    Apache Subversion command line tools

  2. 環境変数のPathにダウンロードした「command line tools」の中にあるbinフォルダのパスを通しましょう(語尾にでも追加しよう)
    【例】〜〜〜〜;C:\Apache-Subversion-1.10.0\bin

  3. cmdで以下のコマンドを実行し、SVNコマンドを利用できるか確認しよう。
    svn --version
    実行後、コマンドは利用できませんみたいな文が返ってこなければ成功です。

  4. ○○.bat(ファイル名はテキトー)を作成しましょう。

  5. batファイルの中に以下のコードを入力して適当な場所に保存しましょう。

@ECHO OFF

set SVN_DIR=<SVNのローカルリポジトリパス>
set /A CNT=0

:LOOP

call svn update --accept p %SVN_DIR%
IF "%ERRORLEVEL%"=="0" GOTO END

call svn cleanup %SVN_DIR%
GOTO LOOP

:END 

エラーメッセージが返ってこなくなるまで、更新コマンド(update)とクリーンアップコマンド(cleanup)を繰り返して行う! という中身になっています。

最後に、cmdでSVN更新対象のファイルへ移動し、batをそこにドラッグ&ドロップ!
すると更新が終わるまで、更新→クリーンアップを自動で繰り返してくれます。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2