アプリケーションでSharpSvnライブラリを使用しています。自動化された統合テストの一環として、テスト リポジトリを作成し、作業コピーをチェックアウトし、いくつかのテストを実行してから、リポジトリと作業コピー フォルダーの両方を削除します。
ただし、単純なDirectory.Delete(workingCopyPath, true);
場合は常に「 Access to the path 'entries' is denied.UnauthorizedAccessException
」というメッセージが表示されます。次のコードでエラーを再現できます。
using (var svnClient = new SvnClient())
{
svnClient.CheckOut(
new SvnUriTarget(new Uri(repositoryPath)), workingCopyPath);
}
Directory.Delete(workingCopyPath, true);
このエラーは引き続き発生します
- 以前の統合テストの実行によって作成された作業コピーを削除してみてください
Thread.Sleep
削除しようとする数秒前
エクスプローラーを使用して一時作業コピーを手動で削除しても、エラーは発生しません。
ここで何がうまくいかないのですか?サブバージョンの作業コピーをプログラムで削除する適切な方法は何ですか?