【问题标题】:compare sources from git and mercurial repositories and synchronize them比较来自 git 和 mercurial 存储库的源并同步它们
【发布时间】:2015-04-05 17:14:37
【问题描述】:

在我们的项目中,由于团队运营方式和公司安全政策,相同的代码库托管在 2 个存储库中,一个是 git,第二个是 mercurial,团队的一部分通常致力于 mercurial repo,第二部分提交给git

由于这种奇怪的操作方式与 2 个 repos 中的一些时间代码库停止同步,我需要让它再次同步。

所以最初我有两个问题:

  1. 如何比较来自 Git 和 Mercurial 的源代码
  2. 如何同步它们。

UPD1:在同步的情况下,我认为不需要超高级,例如具有相同的提交历史或类似的东西。如果它只是将文件置于相同的状态(在可能的情况下,在其他情况下手动合并) - 那将非常好。

【问题讨论】:

  • 希望您创建了这些存储库,以便它们具有现有关系,例如使用 hg-git 从 Git 仓库创建 Mercurial 仓库。是这样吗,还是它们完全独立?
  • 一开始它是大型 git 存储库的一部分。提取了一些库并为它们创建了可变的存储库。不要认为使用了 hg-git(不确定,当时不是项目的一部分)。
  • hggit 向/从 hg 拉/推更改集然后合并?

标签: git github mercurial repository


【解决方案1】:

要比较源代码,您可以在计算机中克隆 mercurial 和 git 存储库,并在这些目录上使用 diff。例如:

diff -rq git_repo hg_repo | grep -v .git | grep -v .hg

同步部分更难:它取决于在代码在两者之间出现分歧的情况下您想要做什么。我想您可以使用之前生成的差异列表手动执行此操作,但我想不出更自动化的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多