2013-05-08 31 views
1

我正在使用LibGit2Sharp将远程存储库克隆到Windows临时文件夹中。我的脚本完成后,我想清理。不过,我总是得到以下错误:以编程方式删除克隆存储库的目录

SystemError: Access to the path 'pack-efcef325f8dc897099271fd0f3db6cf4d9f12393.idx' is denied.

其中pack-efcef325f8dc897099271fd0f3db6cf4d9f12393.idx$local_git_clone_path\objects\pack.

我怎样才能完全删除使用LibGit2Sharp git的回购我克隆的所有本地剩菜文件?

+2

你试图删除文件之前处置库? – nulltoken 2013-05-08 16:19:54

回答

4

我记得遇到过类似的情况。

而且,正如@nulltoken所建议的那样,在尝试删除它所拥有的文件之前,您必须先Dispose()Repository

using应该是最好的选择。

using (var repo = new Repository(repositoryPath)) 
{ 
    //Your repo specific implementation. 
} 

//Code to Delete your local temp dir 

参考:Clone Fixture从LibGit2Sharp