有没有办法使用libgit2sharp恢复单个文件?

时间:2017-05-04 07:26:14

标签: c# git libgit2sharp

我在c#中使用libgit2sharp来获取git工作目录中的修改/删除/添加文件,我已经完成了这个。

但是我希望在libgit2sharp的帮助下在git工作目录中恢复本地更改的文件,那么我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

这是我对uncommited文件撤消更改的实现:

    public void DiscardFileChanges(string filePath)
    {
        var options = new CheckoutOptions { CheckoutModifiers = CheckoutModifiers.Force };
        _repository.CheckoutPaths(_repository.Head.FriendlyName, new[] { filePath }, options);
    }

Explenation:您必须使用--force标志签出当前分支。这样可以将文件重置为委托版本。

请注意,当您的文件状态为已添加时,您必须手动删除此文件。