我试图使用libgit2sharp库。我唯一的代码是
Repository repository = new Repository(@"C:\Path\To\Repo");
当我运行它时,我收到一条错误,指出无法加载DLL' git2':找不到指定的模块。所以,我手动去抓取libgit2sharp中的git2.dll并将其移动到目录中。在此之后运行相同的程序时,我收到另一个错误:尝试加载格式不正确的程序。
在研究这个问题的同时,我发现this post并且解决方案似乎适用于海报,但对我来说并不适用。这个帖子也是在一年前制作的,并且为它做了一个假设的修复,我使用libgit2sharp的最新分支(香港专业教育学院尝试过较旧的知识库没有变化)
有什么想法吗?
答案 0 :(得分:2)
建议的选项是安装最新的 LibGit2Sharp NuGet package ,它会在正确的位置安装所有内容。
但是,如果您希望手动处理此问题,GitHub存储库将同时包含x86
和amd64
版本的git2.dll
。执行master
或vNext
分支的结帐应检索它们。
请注意,每个版本的LibGit2Sharp都针对特定版本的libgit2二进制文件。每个LibGit2Sharp分支都包含一个libgit2子模块,该子模块指向要包装的libgit2提交。
为了使其完美地工作,LibGit2Sharp程序集期望git2.dll
二进制文件位于特定的树结构中。
LibGit2Sharp.dll
|__NativeBinaries
|__x86
| |_git2.dll
|
|__amd64
|_git2.dll