8

如何检查 URL 是否指向 mercurial 存储库?使用 git,我会使用git ls-remote $url并检查返回值。hg有类似的东西吗?

4

2 回答 2

8

您可以使用hg identify它:它可以针对远程存储库运行,如果给定的路径不是存储库,Mercurial 将中止并退出代码 255。此存储库存在:

$ hg identify https://bitbucket.org/mg/mercurial-talk; echo $?
7788b512c5bd
0

这个没有:

$ hg identify https://bitbucket.org/mg/git-talk; echo $?
abort: HTTP Error 404: Not Found
255

您可能希望将 stdout 和 stderr 都重定向到/dev/null.

于 2013-04-22T21:39:38.387 回答
0

AFAIK,ls-remote(在 repo 中使用)和 Git-URL 显示从本地到此 URL 的引用,是吗?

如果您想知道 Mercurial,它知道哪些远程存储库(不用于push|pull,只知道),您可以使用hg paths

如果你想要一些随机的 URL 定义,是否是 Mercurial repo,你至少可以尝试从这个 URL 克隆

于 2013-04-22T11:57:50.987 回答