如何使用LibGit2Sharp删除远程?

时间:2013-12-24 18:53:45

标签: libgit2sharp

我检查了libgit2sharp v0.15.0,似乎没有删除遥控器的方法。

有什么办法吗?

1 个答案:

答案 0 :(得分:3)

  

我检查了libgit2sharp v0.15.0,似乎没有删除遥控器的方法。

这是完全正确的。这种方法尚不存在,因为 libgit2 尚不支持。

有一项工作正在进行中( see PR #1199 )来实现这一目标。订阅此PR可以让您了解它的未来进展。

  

有什么办法吗?

你可以这样手工完成:

  • 删除描述要删除的遥控器的整个配置部分
  • 从配置中删除依赖于要删除的遥控器的每个分支(远程,合并)元组
  • .git/refs/remotes/每个远程跟踪分支参​​考
  • 中删除

例如,如果您愿意放弃遥控器“无用”

从配置中删除整个部分

[remote "useless"]
    url = https://github.com/useless/project.git
    fetch = +refs/heads/*:refs/remotes/useless/*

从以下两个分支中删除远程和合并条目

[branch "vNext"]
    remote = useless
    merge = refs/heads/vNext

[branch "topic/awesome_feature"]
    remote = useless
    merge = refs/heads/topic/awesome_feature

删除以下参考资料

 - .git/refs/remotes/useless/vNext
 - .git/refs/remotes/useless/topic/awesome_feature

更新

拉取请求 #731 刚刚通过API移除了遥控器。

  • 语法: repo.Network.Remotes.Remove(remoteName)