我想删除本地和远程分支。
我的代码:
using (var repository = new Repository(path))
{
var remote = repository.Network.Remotes["origin"];
var options = new PushOptions();
var credentials = options.CredentialsProvider = GetUserCredentialsProvider();
options.CredentialsProvider = credentials;
string pushRefSpec = @"refs/heads/:{0}".FormatWith(branch);
repository.Network.Push(remote, pushRefSpec);
repository.Branches.Remove(repository.Branches[branch]);
}
但我得到401错误(“未授权”)。
这是因为分行名称中有“:”字样。
但我读到它们是必要的,因为它们就像本地git中的“-delete”。
谢谢你的帮助!
最佳答案
这是失败的401未授权错误,因为它是未授权的。要修复此错误,只需将包含凭据的options
传递给Push()
方法:
repository.Network.Push(remote, pushRefSpec, options)
帮我解决了这个问题。
关于c# - libgit2sharp删除远程分支,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34307963/