将HG项目从Bitbucket镜像到Github

有没有一个有效的工作stream程来镜像主要托pipe在使用Hg的bitbucket上的项目,github?

你可以使用像hg-git这样的工具来:

  • 设置一个Git仓库,你有推入访问,
  • 然后在项目中运行hg push [path] 。 例如:
 $ cd hg-git # (a Mercurial repository) $ hg bookmark -r default master # make a bookmark of master for default, so a ref gets created $ hg push git+ssh://git@github.com/schacon/hg-git.git $ hg push 

这将把我们所有的Mercurial数据转换成Git对象,并把它们推送到Git服务器。
您也可以将该path放在.hg/hgrc[paths]部分,然后按名称推送。

HG-混帐

如果您将Mercurial用于项目,则可以快速轻松地制作项目的git镜像,以便git用户可以提供帮助。 我创build了一个关于使用hg-git来pipe理GitHub上的Mercurial镜像的教程。

它涵盖了如何开始使用GitHub帐户,如何将项目从Mercurial推到GitHub,以及如何接受来自GitHub的贡献(拉取请求)。 以下是博客文章的链接: http : //hgtip.com/tips/advanced/2009-11-09-create-a-git-mirror/

添加git-remote-hg到你的binpath。 然后你可以像github上提到的那样镜像。

 git clone --mirror hg::https://bitbucket_repo 

然后,进入你的克隆回购

 git remote set-url --push origin https://github.com/exampleuser/mirrored 

最后,同步你的镜像

 git fetch -p origin git push --mirror 

截至2013年7月, BitSyncHub是一个Web服务,通​​过BitBucket post-receive挂钩实现了这个过程的自动化。 您需要将服务写入权限授予您的GitHub存储库(添加bitsynchub作为贡献者)。

另一个可用的解决scheme来快速转换: https : //github.com/frej/fast-export