Могу ли я использовать Git и Mercurial - Git в родительском каталоге и Mercurial hg в дочерних каталогах? - PullRequest
0 голосов
/ 04 июля 2018

В нашей небольшой команде в настоящее время мы используем Mercurial hg для нескольких проектов. Мы говорили о попытке переехать в Git. Я думал о добавлении Git в родительский каталог, чтобы обеспечить более постепенный переход. Я буду первым, кто сделает этот шаг - я буду использовать в основном Git для большинства задач, но я буду тянуть и толкать из Mercurial hg.

Это, очевидно, требует, чтобы каждый элемент управления версией игнорировал файлы другого. Я хотел бы подтвердить, что это выполнимо, и что нет никакого известного конфликта для запуска Mercurial hg и git вместе.

Обновление

Если я использую в основном Git и использую Mercurial только для последнего шага - фиксации и передачи из Master в удаленный репозиторий - каковы риски?

Ответы [ 3 ]

0 голосов
/ 05 июля 2018

Вы можете использовать git-remote-hg , который:

- полуофициальный Mercurial мост из проекта Git, когда-то установлен, он позволяет вам клонировать, извлекать и выдвигать Ртутные репозитории, как если бы они были Git

Идея состояла бы в том, чтобы клонировать из HG в git (используя git-remote-hg, чтобы включить это). Затем вы можете работать в git сколько угодно, но в конечном итоге все равно можете делиться работой с другими с помощью HG push / pull.

0 голосов
/ 09 июля 2018

Если вы еще не перенесли hg repo в git repo, вы можете использовать как git, так и mercurial для временного периода. И нет никаких рисков для этого.

Единственное, на что нужно обратить внимание - какова ситуация (список ниже) для вас, чтобы использовать git:

  • Ситуация 1: управление репозиторием hg, включая все версии в git repo

    Если вы хотите управлять версиями файлов и версиями репозитория hg в git repo, вы просто фиксируете все файлы (включая файлы в папке .hg) репозитория hg в git repo.

  • Ситуация 2: управлять файлами только в git repo (информация о hg repo не будет записываться в git repo)

    Если вы хотите управлять версиями файлов только в git repo, вам нужно игнорировать информацию hg repo, добавив папку .hg в файл .gitignore (как упоминалось выше).

И когда вы будете готовы перенести репозиторий hg в git, сохраните перенесенное репозиторий git для контроля версий.

0 голосов
/ 04 июля 2018

Вы можете сделать это (я делал такой вариант на предыдущем рабочем месте, когда мне надоели медлительность и отсутствие гибкости Mercurial в отношении редактирования истории). Добавьте .hg к .gitignore и .git к .hgignore файлам. Однако я бы посоветовал против этого: это больно и требует, чтобы вы много знали о внутренностях обоих VCS.

...