我想做相当于git checkout -- file
的操作来放弃尚未进行提交的文件中的更改。
我已经看到围绕how to checkout from a specific commit的问题,但是我不想指定任何特定的提交或分支。
在以下代码中,commitishOrBranchSpec
的参数似乎是必需的,但不能为null或空字符串;是否有一个可以指定default
的值,类似于上面的git命令行中没有指定任何分支或提交?
using (var repo = new Repository(workingDir))
{
// $TODO: Figure out what to pass for parameter 1,
// commitishOrBranchSpec (null and "" don't work)
repo.CheckoutPaths("", Enumerable.Repeat(filePath, 1));
}
答案 0 :(得分:0)
我已经看到了如何从特定提交结帐的问题,但是我不想指定任何特定的提交或分支。
您必须指定要结帐的内容。如果您想模仿git checkout -- file
,那么您只需使用HEAD
分支即可。例如:
repo.checkoutPaths(repo.Head, new string[] { filePath }, checkoutOptions);