我一直在Windows上使用git一段时间(使用msysGit),我喜欢分布式源代码控制的想法.就在最近,我一直在关注Mercurial(hg),它看起来很有趣.但是,我无法解决hg和git之间的差异.
有没有人在git和hg之间进行并列比较?我很想知道hg和git的不同之处,而不必参加讨论.
有一段时间我一直在为我的个人项目使用subversion.
我越来越多地听到关于Git和Mercurial以及DVCS的一般情况.
我想给整个DVCS带来一些旋转,但我对这两种选择都不太熟悉.
Mercurial和Git有什么区别?
注意:我不是要找出哪一个是"最好的",甚至不应该从哪个开始.我主要寻找他们相似的关键领域,以及他们不同的关键领域,因为我有兴趣知道他们在实施和理念方面有何不同.
我需要将mercurial项目转换为git项目,但我希望保持提交历史不变.我目前的解决方案是只删除hg相关文件,然后git init &&手动添加我需要的文件,但这不会保留历史记录.这有什么解决方案吗?
我一直在使用git作为源代码库开发一个java应用程序.我想与其他java开发人员共享该项目,而hg似乎最常被他们使用.
我的问题是如何将git存储库转换为hg?
如果我尝试使用谷歌搜索"将git转换为hg",并且每次搜索都是关于从hg转换为git.我也在使用TortoiseHg.
这是一个困扰我一段时间的问题.我完成了我的作业并检查了stackoverflow,至少找到了关于我的问题的两个主题: Git for Mercurial,如git-svn和 Git与Mercurial存储库的互操作性
我已经做了一些严肃的谷歌搜索来解决这个问题,但到目前为止没有运气.我还阅读了Git Internals的书,以及Mercurial Definitive Behind the Scenes来试图解决这个问题.我仍然有点疑惑为什么我找不到任何合适的git-hg类型的工具.
从我的角度来看,git-svn是其中一个主要特性,为什么我选择在工作中使用git而不是mercurial.它允许我使用我喜欢的工作流程,如果他们不在乎,没有其他人需要打扰.我只是没有看到使用中间hg repo来回转换的重点,正如其中一个链中所建议的那样.
所以无论如何,从我读过的内容来看,hg和git在概念设计上看起来非常相似.引擎盖下存在差异,但这些都不会阻止为hg创建git客户端.在我看来,远程跟踪分支和章鱼合并使得git比hg更强大.
那么,真正的问题是,为什么git-hg不存在(或者至少很难找到)有任何真正的原因吗?git用户(和开发人员)对他们的hg对手是否有一些敌意导致缺乏git-hg工具?你们有没有计划开发类似的东西,并公开上市?我可以自愿参加(尽管有非常微弱的C技能)参与完成这项工作.我只是没有完全的知识来自己开始这个.
这可能是结束所有DVCS战争的工具吗?
是否有一个高效的工作流来镜像主要使用Hg托管在bitbucket上的项目到github?
随着git svn clone我可以在一个颠覆存储库使用Git工作.是否有类似的方法来处理Mercurial(hg)存储库?
我知道有一个插件,但我从来没有使用过git插件,也没有用git这么好.我只是使用相当简单的工作流程
所以,我的问题是.我怎么能(简单来说,如果这不是问题),将一个git项目上传到BitBucket?
如果你知道任何涵盖这个的网络教程,那将同样好.
根据这个答案/sf/answers/934846111/,设置git以使用mercurial"无依赖关系或任何东西"应该相当容易.
这似乎并不适用于所有在Windows上顺利进行的操作.
我试着按照这个指南
https://github.com/msysgit/msysgit/wiki/Guide-to-git-remote-hg
在修复makeFile以便在我的系统上工作并构建git后,我无法调用git-remote-hg,因为它抱怨它无法找到python解释器,所有这些都很难正确配置.所以我手动调用它
C:/Python27/python.exe git-remote-hg clone C:/TestMercurialRepo
Run Code Online (Sandbox Code Playgroud)
这现在给我以下错误.
Traceback (most recent call last):
File "git-remote-hg", line 99, in <module>
sys.exit(HgRemoteHelper().main(sys.argv))
File "d:\development\msysgit\git\git_remote_helpers\helper.py", line 196, in m
ain
repo = self.get_repo(alias, url)
File "git-remote-hg", line 33, in get_repo
if repo.capable('branchmap'):
File "c:\Python27\lib\site-packages\mercurial\repoview.py", line 205, in __get
attr__
return getattr(self._unfilteredrepo, attr)
AttributeError: 'mqrepo' object has no attribute 'capable'
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题 ?
如果在任何地方都有预构建版本那么那将是非常棒的,因为我觉得我正在努力让这个工作.
我有一个在Bitbucket上托管的HG项目,我想把它移到Github.
我遵循这里的指南在我的TortoiseHG上安装hg-git扩展.
我已经在Github上创建了一个存储库,但还没有初始化它(它显示了该指令页面),所以我无法克隆那个git存储库.
接下来我该怎么办?
编辑:抱歉忘记添加,然后我将使用git.
更新:我借了一个mac并且fast-git-import无痛地转换它.如果有人尝试过以下解决方案并在Windows下工作,那就投票吧,我会把它作为答案.