只是想注意:此问题仅关于使用mercurial-server共享mercurial
重现的步骤:
hg init
尝试通过mercurial-server克隆它:
hg clone ssh://hg@192.168.132.72/test2 .
remote: abort: There is no Mercurial repository here (.hg not found)!
прервано: no suitable response from remote hg!
修改.hg/requires
文件,删除dotencode
属性
重复第2步:
hg clone ssh://hg@192.168.132.72/test2 .
изменений не найдено
updating to branch default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
任何想法为什么会发生以及我如何解决它?
ps:安装了mercurial 1.9,命令在同一台机器上执行。
答案 0 :(得分:1)
发生这种情况是因为:
我在/usr
(新的,来自1.9)和/usr/local
(旧的,来自1.6)中安装了mercurial site-packages。并hg-ssh
取了旧的。
hg-ssh
需要修补一下
dispatch.dispatch(['init', repo])
应替换为
dispatch.dispatch(dispatch.request(['init', repo]))
和
dispatch.dispatch(['-R', repo, 'serve', '--stdio'])
与
dispatch.dispatch(dispatch.request(['-R', repo, 'serve', '--stdio']))
相应地
答案 1 :(得分:1)
最近发布的mercurial-server版本1.2修复了这个问题。