push - Libgit2sharp如何进行镜像推送

标签 push mirror libgit2sharp

我对 Git/LibGit2Sharp 相当陌生,正在尝试使用 LibGit2Sharp 创建 git 存储库的镜像。按照此处给出的指示进行操作:https://github.com/libgit2/libgit2sharp/issues/577 ,我首先通过添加远程存储库将外部存储库镜像到本地文件夹,并使用 repo.Network.fetch(remote, fetchRefSpec) 其中 fetchRefSpec引用文献/\*:引用文献/*

现在,我想将数据推送到另一个远程存储库。在这里我很困惑。因为,当通过 git 命令执行此操作时,您将 remote.remoteName.mirror 配置条目设置为 true,然后执行 git push remoteName。当mirror设置为true时指定任何其他refSpec都会出错。

但是,当使用 LibGit2Sharp 时,即使我设置了 mirror = true,我仍然需要在推送时提供 pushRefSpec。提供空或通配符 refSpecs 会引发异常。我什至尝试了 refs/tags/\*:refs/tags/*,但我得到了同样的异常。循环遍历 pushRefSpec 中的所有分支可以工作,但不会创建镜像。

有人试过这个吗?有没有更好的方法来做到这一点?

最佳答案

.mirror 配置是 git 工具的一个选项。 libgit2(sharp) 在不同的级别上工作,您需要准确指定要推送的内容。

不幸的是,目前它不支持带有推送模式的引用规范,因此如果您想推送每个引用,则必须将每个引用单独添加为推送的引用规范。

关于push - Libgit2sharp如何进行镜像推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25721202/

相关文章:

ios - 在 ios 中使用 asp.net 推送通知

javascript - 将函数参数添加到空数组中

CentOS 公共(public)镜像

MYSQL - 创建一个 View /表来镜像由 ODBC 连接的 Oracle 表

.Net Core VS2015,无法加载 DLL 'git2-785d8c4' : The specified module could not be found.(HRESULT 异常:0x8007007E)

LibGit2Sharp 从网络文件共享克隆

iphone - 将通知更新推送到现有应用程序 : Will Users Be asked to allow or not?

ios - 以编程方式使用 Storyboard推送 View Controller 的替代方法

javascript - 如何在本地主机上运行 html 文件?

git - LibGit2Sharp 索引被锁定 - 错误