Gáb*_*kos 3 git github libgit2sharp
我通过以下方式使用LibGit2Sharp.Credentials类一段时间:
LibGit2Sharp.Credentials credentials = new UsernamePasswordCredentials()
{
Username = TokenValue,
Password = ""
};
var pushOptions = new PushOptions() { Credentials = credentials} ;
Run Code Online (Sandbox Code Playgroud)
现在LibGit2Sharp.PushOptions.Credentials是绝对的,我必须使用CredentialsProvider.
我想问你CredentialsProvider在这种情况下使用的正确方法是什么?
非常感谢你!
>我想问你在这种情况下使用CredentialsProvider的正确方法是什么?
这段代码应该符合您的需求.
var pushOptions = new PushOptions() {
CredentialsProvider = (_url, _user, _cred) => new UsernamePasswordCredentials
{
Username = TokenValue,
Password = ""
}
}
Run Code Online (Sandbox Code Playgroud)
这是由PR#761引入的,以便允许一些更具交互性的场景(例如,当用户被要求将他的凭据作为克隆过程的一部分时)并为其他类型的凭证准备路径(例如,Ssh) ).
这CredentialsProvider是一个回调
Credentials验证期间使用的(基本类型)可以CredentialsProviders在CloneFixture.cs测试套件中看到一个实例.