記載日:2007/03/04
Windows XP SP2 TortoiseSVN 1.4.3, Build 8645

1.「紛失」したファイルとは

Subversion を利用していて、たまにファイルのステータスが「紛失」とマークされている場合があります。 Subversion でリビジョン管理しているファイルがファイルシステム上に存在していない場合が 「紛失」 にあたります。正しく Subversion のコマンドを使用してファイルを削除したり移動したりしている場合には発生しませんが、 ついつい普通に(ファイルシステムの機能を使って)ファイルを移動したり削除したりしてしまうとこの「紛失」という状態になってしまいます。

2.「紛失」状態を作る

ここでは、 Subversion が見失い 「紛失」 となったファイルを 「削除」 する手順を紹介したいので、 まず 「紛失」 状態を意図的に作成することにしました。

2-1.Subversion で管理されていることを確認

管理中のファイルSubversion で管理されているフォルダに移動します。ここでは 「テキスト1.txt」、 「テキスト2.txt」、 「テキスト3.txt」 の3ファイルが Subversion の管理下に置かれていることがアイコンからわかります。

※アイコンで Subversion 管理が判断できるのは、 TortoiseSVN がインストールされているためです。

2-2.ファイルシステムの機能で削除する

ファイルシステムの機能で削除「テキスト2.txt」 を選択して 「Delete」 を押して削除しました。

3.紛失ファイルを削除する

上記までで、紛失ファイルの準備ができたので、紛失ファイルを削除されたファイルとして扱う方法を紹介します。

3-1.「紛失」状態を確認する

ファイル紛失ファイルシステムの機能で削除したファイルが 「紛失」 の状態になっていることを確認するには、ファイルシステムから削除したファイルを含むフォルダを選択して右クリックします。表示されるポップアップメニューの 「TortoiseSVN」 から 「変更をチェック」 を選択します。

変更を確認するダイアログが表示されるので 「テキストの状態」 が "紛失" となっていることを確認します。

3-2.紛失したファイルを削除対象として扱う

紛失ファイルを削除状態にSubversion が紛失したということは、正しく管理できないということにもなるので、正しい状態を知らせてやる必要があります。 今回はこの紛失したファイルを管理対象から削除することにしました。

紛失したファイルを削除対象とするには、「紛失」 状態のファイル上で右クリックして表示されるポップアップメニューから 「削除」 を選択します。

3-3.削除状態に変更完了

これで 削除状態に変更紛失」 の状態だったファイルが 「削除」 に変更されました。今後は Subversion で削除されたファイルとして扱われるようになります。

以上で紛失したファイルを削除することができました。 TortoiseSVN 1.4.3 では、紛失した状態でコミットをかければ "削除" することができますが、紛失という曖昧な状態でコミットするのではなく明示的に状態を変更しておいた方がよいと思います。 今回の様に、 Subversion 管理対象のファイルをファイルシステムの機能で削除してしまった場合、同様の手順で 「元に戻す」 こともできます。 間違って消してしまった場合は、「元に戻す」を選択します。