Это не так сложно, как думают люди.В долгосрочной перспективе я предлагаю вам использовать hgsubversion, как предлагают другие ответы, но есть довольно простое краткосрочное решение.
- Проверьте все в своем репозитории hg repo
- hg up-r [последняя ревизия, конвертированная из svn]
- Извлечь из svn в чистый каталог
- Скопировать каталог .hg из репозитория hg в svn checkout
- Проверьте все эти svn изменения в вашем репозитории hg (не забудьте добавить / удалить файлы ... этот шаг займет немного времени, так как hg должен сканировать все на этот раз)
- Объедините две головы, которые вы сейчас используете, используя hg(при условии, что svn продвинулся впереди вас)
- Проверьте сборку (если необходимо), вернув изменения в исходное репозиторий hg и протестировав их там (идея состоит в том, чтобы сохранить ваше hg + svn repo в чистотепоэтому отсутствующие / добавленные файлы легко обнаружить в соответствующих инструментах)
- Проверьте все изменения, используя svn (не забудьте добавить / удалить файлы)
Как только вы это сделаетена самом деле это не так уж сложноd использовать обе системы друг на друге ... но hgsubversion, вероятно, является лучшим решением, если вам нужен этот долгосрочный период.Я лично использую вышеупомянутую систему, потому что hgsubversion не обрабатывает некоторые довольно странные вещи, которые мы делали с нашим репозиторием SVN в прошлом.
РЕДАКТИРОВАТЬ: я делаю предположение с этим решением, что ствол SVNпродвинулся впереди вас;если это не так, эта процедура становится намного проще.Если вы хотите объединить каждую ревизию hg по отдельности, не должно быть причин, по которым вы не можете этого сделать, просто потребуется немного больше работы.
- Слияние hg rev 1 с подсказкой svn... совершить в SVN
- Слить HG Rev 2 с подсказкой SVN ... совершить в SVN
- Объединить HG ...