Я немного поработал над проектом, который я разветвил в GitHub. Исходный проект, который я выделил, изначально был преобразован из проекта Mercurial в Codeplex.Частичное объединение репозитория git
Теперь я узнал, что кто-то еще преобразовал проект Mercurial в GitHub, но на более поздней стадии и, кроме того, добавил некоторые положительные эффекты в git. Я хотел бы разблокировать другое репо и воспроизвести мои коммиты, так как другое репо кажется активным. Я также хочу обновить новое репо с новыми изменениями в первоначальном репозитории Mercurial.
Так вот сценарий:
My repo:
hg1->hg2->hg3->my1->my2
|
->my3
hgN is the original Mercurial commits, myN is my git commits.
Other guy:
HG1->HG2->HG3->HG4->HG5->og1->og2
HG1-HG3 are identical to hg1-hg3. Same file tree but with different hash though.
ogN are git commits by that other guy.
What I want:
HG1->HG2->HG3->HG4->HG5->og1->og2
|
->my1->my2
|
->my3
Предполагая, что я клонировал как операции РЕПО, и мои изменения включают в себя некоторые ветви, как бы я создать объединенный репозиторий?
Что делать, если мои изменения были в одной ветке. Могу ли я сделать простую замену?
Истории несовместимы? У меня создалось впечатление, что hg to git conversion является детерминированным (в отличие от svn to git one), и поэтому независимые преобразования конвертировали те же изменения hg в ревизии _same_ git. Разве это не так? –
, по-видимому, два репозитория GitHub использовали разные методы для преобразования hg-репо. Эти два git-commits соответствуют одному и тому же hg-commit. но имеют разные хэш-ключи: [репо 1] (https://github.com/KevinHoward/Irony/commit/3ec2f63d97ccbae8f34473102f8874e11c3e7add) и [репо 2] (https://github.com/Alxandr/Irony/commit/2cde698432976bea19929492629e1fa55400b413) – Holstebroe