如何将git存储库转换为mercurial?
我一直在开发一个使用git作为源代码库的Java应用程序。 我想与其他java开发人员分享这个项目,而且似乎是他们最常使用的。
我的问题是如何将git仓库转换为hg?
如果我尝试使用谷歌search“将git转换为hg”,并且每次search都是从hg转换为git。 我也使用TortoiseHg 。
安装后,默认情况下hg convert实用程序没有打开。 为了将其设置为您的.hgrc文件添加以下内容。 
 [extensions] hgext.convert= 
 如果你在Windows上使用TortoiseHg ,那么这个文件作为mercurial.ini驻留在你的主目录下。 更改设置后,您将可以使用hg convert实用程序。 
通过使用Mercurial Convert扩展
将下列行添加到
.hgrc或启用扩展:
 [extensions] hgext.convert= 
并input一个
 cd src hg convert --datesort . dst 
(即使它可能导致一些问题 …)
注:: metrix报告,这可能无法正常工作:
  hg convert --datesort src dst 
注意:如果您从源目录以外的目录执行此命令,则会发生
hg convert错误。
你会得到以下错误:
 abort: cannot read tags from git-repo4/.git 
在Windows XP上用git 1.7.9和Mercurial 2.6.2确认
您可能想要查看http://hg-git.github.com/实用程序:Mercurial的Git插件;
这个插件最初是由GitHub的人开发的,并允许从git < – > mercurial转换无损。 理论上,你甚至可以克隆hg仓库。
使用Mercurial进行分布式版本控制 :
convert所支持的版本控制工具如下:
- 颠覆
- CVS
- 混帐
- 的darcs
所以也许你不需要任何额外的工具?
转换扩展可能适用于您,但如果不适用,您可能需要检查定制哪一个是在各种分布式SCM之间转换的通用工具。
你可以根本不转换它。 只需使用Hg-Git插件! 没有人会知道这个区别。
新的城市玩家: git-remote-hg 。 它在git中提供本地桥接支持。
只是:
 hg init ../hgrepo git push hg::$PWD/../hgrepo 
 在所有Git仓库的Git文件夹中,我创build了Git2Hg.cmd以下内容的Git2Hg.cmd文件: 
 set PATH=%PATH%;C:\Program Files\TortoiseHg set PATH=%PATH%;C:\Program Files\Git\bin hg convert %1 
现在我可以通过在CMD中input以下命令将Git存储库转换为Hg:
 Git2Hg "Folder Name" 
Hg-Git插件或者如果你使用Windows或从一个到另一个迁移访问这里2 [Windows GIT]