2016-04-16 10 views
1

git checkout -- fileに相当する処理を行い、まだコミットされていないファイルの変更を破棄したいとします。LibGit2Sharp Branchを指定せずにファイルを戻すCheckoutPaths()

私はhow to checkout from a specific commitについて質問しましたが、特定のコミットやブランチを指定したくありません。

次のコードでは、commitishOrBranchSpecのパラメータが必要なように見えますが、nullまたは空の文字列は使用できません。上記のgitコマンドラインでブランチやコミットが指定されていないのと同様に、ここで指定できる値はdefaultですか?

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

私は、しかし、私は特定のコミットやブランチを指定したくない、コミット特定からチェックアウトする方法の周りの質問を見てきました。

チェックアウトするものを指定する必要があります。 git checkout -- fileをエミュレートする場合は、単にHEADブランチを使用してください。例:

repo.checkoutPaths(repo.Head, new string[] { filePath }, checkoutOptions); 
+1

「repo.Head.FriendlyName」(この場合は「master」という文字列になります)のように感謝しています。 –

関連する問題