我一直在开发使用git作为源代码存储库的Java应用程序。我想与其他Java开发人员共享该项目,而hg似乎是他们使用最多的。
我的问题是如何将git存储库转换为hg?
如果我尝试谷歌搜索“将git转换为hg”,并且每次搜索命中都是关于从hg转换为git的。我也在使用TortoiseHg。
我一直在开发使用git作为源代码存储库的Java应用程序。我想与其他Java开发人员共享该项目,而hg似乎是他们使用最多的。
我的问题是如何将git存储库转换为hg?
如果我尝试谷歌搜索“将git转换为hg”,并且每次搜索命中都是关于从hg转换为git的。我也在使用TortoiseHg。
Answers:
hg convert
安装后,默认情况下该实用程序未打开。为了进行这样的设置,请在.hgrc
文件中添加以下内容。
[extensions]
hgext.convert=
如果您在Windows上使用TortoiseHg,则此文件位于的主目录中mercurial.ini
。更改此设置后,您将可以使用该hg convert
实用程序。
在您的
.hgrc
或中添加以下几行以启用扩展程序:
[extensions]
hgext.convert=
然后输入
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确认
.hgrc
设置而不是链接到它,那将是全面的。
您可能需要看一下http://hg-git.github.com/实用程序:Mercurial的Git插件
这个插件最初是由GitHub的人开发的,它允许无损地从git <-> mercurial进行转换。从理论上讲,您甚至可以克隆hg存储库。
转换扩展名可能对您有用,但是如果不行,您可能想看看“ 裁缝”,它是在各种分布式SCM之间转换的通用工具。