【Subversion】クリーンアップとは?
Subversionが作業コピー(や.svnにある情報)を修正するときには、できるだけ安全にやろうとします。作業コピーの内容を変更する前にSubversionはまず変更手順をログファイルに書きます。次に実際に変更を適用するためにログファイルの中のコマンドを実行していきます。最後にSubversionはログファイルを削除します。プログラムの構成という意味では、これはジャーナル化ファイルシステムとよく似ています。 Subversionの操作が中断されると(プロセスが異常終了したり、マシンがクラッシュしたり、といった場合)ログファイルはディスクに残ります。ログファイルを再実行することでSubversionは以前に開始された操作を完結することができ、作業コピーを正常で一貫した状態に戻すことができます。
svn cleanupがやるのは、まさにこのことです。作業コピーを探して、残ったログを実行し、プロセスのロックを取り除きます。Subversionに作業コピーのどこかが「ロック」されていると言われたときには、このコマンドを実行してください。同様にsvn status はロックされているアイテムの隣に L を表示してそのことを示します:
クラッシュなどして、やり残しの仕事があるときに、クリーンアップするといいよとのこと。
そして私自身は一度もクリーンアップが必要になったことがありません。
マシンやネットワークが相当不安定なときにでも発生するのでしょうか。
コメント