【问题标题】:Programmatically delete directory of cloned repository以编程方式删除克隆存储库的目录
【发布时间】:2013-05-08 15:17:51
【问题描述】:

我正在使用LibGit2Sharp 将远程存储库克隆到 Windows 临时文件夹中。脚本完成后,我想清理。但是,我总是收到以下错误:

SystemError:对路径“pack-efcef325f8dc897099271fd0f3db6cf4d9f12393.idx”的访问被拒绝。

其中pack-efcef325f8dc897099271fd0f3db6cf4d9f12393.idx$local_git_clone_path\objects\pack. 中的一个文件

如何完全删除使用 LibGit2Sharp 克隆的 git 存储库的所有本地剩余部分?

【问题讨论】:

  • 您是否在尝试删除文件之前处置了存储库?

标签: c# git libgit2sharp


【解决方案1】:

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

并且,正如@nulltoken 所建议的,您必须先Dispose()Repository,然后再尝试删除它所持有的文件。

using 应该是最好的选择。

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

//Code to Delete your local temp dir

参考:Clone Fixture 来自 LibGit2Sharp

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    • 1970-01-01
    • 2014-10-22
    • 1970-01-01
    • 2021-04-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多