在Windows转换水银(汞)储存库的Git(7)

问题描述 投票:23回答:6

我在这一点真的很沮丧。我有一个在它编码的历史个月的现有汞储存库,我想这为一体的民营Github的仓库,所以我可以从那里进行这项工作。不幸的是我使用的是Windows和我似乎无法找到任何方式,我可以真正得到正常工作的仓库转换。实际上的帮助和建议我可以在网上找到的每一位似乎假定我是从某种* nix的shell中运行,这我不是。

我公司目前已经安装:TortoiseHG,Python的3.1和Git的Windows。

我已经试过:

  1. HG-初始化插件汞 - 当我尝试使用gexport命令(和其他人HG-GIT),我只是得到蟒蛇异常的字符串。我完全不能得到的git甚至承认G遥控命令。我试过下面是什么在这里:http://github.com/blog/439-hg-git-mercurial-plugin
  2. HG-到混帐(快速导出) - 所有教程一直期待我运行一个sh文件。另一个计算器线程似乎意味着Powershell的可运行.SH文件,但我不能让他们跑了我的生活。例如:http://hivelogic.com/articles/converting-from-mercurial-to-git
  3. 水银与git转换器 - http://permalink.gmane.org/gmane.comp.version-control.git/36601 - 这其中不希望当我通过Python,它抱怨说,它有44行语法错误,我不知道python的运行工作,所以我没有想法。

四个小时的谷歌搜索,并通过无用的教程和人更幸运的超我唱各据说,很有帮助博客文章的赞美涉水,但我还没有与此远矣。任何人都可以提供任何帮助或建议,我来试试呢?

python windows git mercurial
6个回答
19
投票
  1. 安装Cygwin(与Python,汞,GIT)
  2. 安装git-hg
  3. 运行git-hg clone ...url...

或者告诉我的网址是什么,你这个汞回购,我可以把它转换为你。


7
投票

有很多关于如何水银仓库转向Git在Windows上相互矛盾的信息。这真的是很容易,只需要安装TortoiseHg和Git。

制备

通过添加启用HG-混帐以下到您的Mercurial配置文件(%USERPROFILE%\ mercurial.ini):

[extensions]
hggit = 
hgext.bookmarks =

[git]
intree = True

转变

导航到存储库的目录(包含.hg子目录)在命令行上,并执行以下命令:

hg bookmark -r default master
hg gexport --debug
git config --bool core.bare false
git reset HEAD -- .

更多信息

你可以在我的主题blog article找到这些步骤的详细说明。


2
投票

你有没有考虑安装msysgit? git的bash shell的它给你应该能够运行.SH文件。


2
投票

我读过有关这些汞转换器Git的一切的确指出了一个明显的错误,你所做的:使用Python 3!

你已经得到那些Python的错误是由于像HG-Git和快速的出口使用Python 2.6在建的脚本。 Python 3中对待“打印”方式不同,因此你的错误。

要么重写脚本和您的版本一起使用或安装Python 2.6。

请务必将其添加到您的PATH设置。也是一样,当你安装msysGit的。要确保你选择在安装到Git的添加到您的路径中的第二个选项。

您还需要水银对于Python,可在TortoiseHG的THG-winbuild项目:

https://bitbucket.org/tortoisehg/thg-winbuild/downloads

该文件将被命名为 '善变-2.2.2.win-AMD64-py2.6.exe' 对64位Windows和 '善变-2.2.2.win32-py2.6.exe' 为32位。当你在它,得到同伴的Mercurial 2.2.2安装,以防万一。

虽然你说你不希望安装另一个VCS软件,使用这些汞的转换器需要水银也被安装。

另一个缺陷看出来的是这些转换器可能无法与水银的最新版本。您可能需要做一些试验与旧版本要找到一个与脚本运行良好。

一定要仔细通过教程和哪个转换器您解决在使用时的自述文件中读取。这似乎是一个很大的悲伤和烦恼仅掠过文件后已经迫不及待地跳入深水茎。

有迹象表明,添加到Git和Mercurial的msysGit支持可用的补丁,但如果你想跟着这条路线你需要坦然面对修补和从源代码编译。


0
投票

这似乎愚蠢的(或解决方案绝望的...),但我认为,大巴扎有两种Hg和Git代码库的良好支持,以及它的工作原理以及在Windows上。 所以,如果一切都失败了,也许你可以使用bzr-hg和的bzr-git的进行转换......


-1
投票

如果原来的水银回购可在网络上,如果你不介意使用GitHub上要做到这一点,从水银转换为Git是现在很轻松:

  1. 登录到GitHub上。
  2. 点击右上角的+
  3. 选择Import repository
  4. 供应Mercurial库的网址,一个名字为它您的帐户,以及是否会在公共或私人。
  5. 点击Begin import和等待。

你甚至都不需要在那之后留在页面上。一段时间后,GitHub上将由导入完成电子邮件通知您。

© www.soinside.com 2019 - 2024. All rights reserved.