使用“原始”mercurial API我可以编写类似的内容:
peer = hg.peer(ui.ui(), {}, 'ssh://hg@bitbucket.org/some/project')
建立连接后,我可以使用远程仓库。
我无法理解使用hglib的远程仓库应该有什么用处。 天真的方法,即使用一些简单的东西:
hglib.open("ssh://hg@bitbucket.org/some/project")
不起作用,所引发的例外并没有让我更清楚。
我的问题:使用hglib,如何打开与远程ssh-repo的连接?
答案 0 :(得分:1)
hglib文档对于如何使用它并不是很啰嗦。最好的方法是在~/.ssh/known_hosts
。
但您可以使用以下代码克隆回购:
hglib.clone(source="ssh://hg@bitbucket.org/some/project")
您当然可以添加目标文件夹(例如dest =“/ path / to / blah”)。
如果您已经克隆了现有的hg repo,则可以在尝试hglib.open()
之前更改hgrc中的某些设置,因此hg使用ssh url,如下所示:
[ui]
username = some_user
[paths]
default = ssh://hg@bitbucket.org/some/project
修改强> 我认为要让hg.open工作,你必须检查一个repo。对我来说,我指的是克隆我的回购的路径。所以:
hglib.open('/path/to/cloned/repo')
要通过SSH执行此操作,您必须如上所述编辑/repopath/.hg/hgrc。