LibGit2Sharp CheckoutPaths()

Joe*_*uDa 3 git repository git-checkout libgit2 libgit2sharp

我做了一个提交(49916 .....)现在我想将一个提交文件签出到工作目录中.该文件名为NEW.txt.如果我输入

Git checkout 49916 NEW.txt

进入Git Bash它会创建带有我工作目录内容的NEW.txt文件.

但我的LibGit2Sharp命令不想工作.我究竟做错了什么?

       var repo = new Repository(repopath);
       var checkoutPaths = new[] { "NEW.txt"};    
       repo.CheckoutPaths("49916", checkoutPaths);
Run Code Online (Sandbox Code Playgroud)

我读了每篇关于checkoutpaths函数的文章.但是我无法让它发挥作用.我从LibGit2Sharp结帐测试文件中获取了该函数.

            repo.CheckoutPaths(checkoutFrom, new[] { path });
Run Code Online (Sandbox Code Playgroud)

jam*_*ill 7

运行该代码会发生什么?它是否运行完成但工作目录中没有变化?如果您尝试使用该CheckoutModifiers.Force选项结帐会发生什么?

CheckoutOptions options = new CheckoutOptions { CheckoutModifiers = CheckoutModifiers.Force };
repo.CheckoutPaths("49916", checkoutPaths, options);
Run Code Online (Sandbox Code Playgroud)