Переход от визуальных источников безопасности к Mercurial - PullRequest
19 голосов
/ 07 июня 2009

Как лучше всего переместить репозиторий Visual Sourcesafe в Mercurial (я заинтересован в сохранении всей истории)?

Ответы [ 6 ]

14 голосов
/ 07 июня 2009

Хотя я не сделал этого конкретного преобразования, я перешел с VSS на SVN, используя (IIRC) этот скрипт . Возможно, вы захотите заглянуть в портного и выполнить поиск vss2hg. Также имейте в виду, что может иметь смысл пройти промежуточный этап, например vss2svn + svn2hg или аналогичный.

Основной совет, который я бы дал, заключается в следующем: создайте сценарий преобразования, чтобы вы могли легко выполнить его заново. Это позволит вам выполнять ночные преобразования из VSS в Hg и убедиться, что все конвертируется правильно, прежде чем вы нажмете на него триггер.

13 голосов
/ 23 марта 2010

Я являюсь автором сценария vss2hg.pl и использовал его для перемещения многих проектов из VSS в Mercurial. В нем есть одна или две незначительные ошибки, когда некоторые комментарии не полностью конвертированы, но я не видел никаких других проблем. Он преобразует полную историю и обходит проблему с VSS, когда часы ПК пользователя могут влиять на порядок, в котором, по-видимому, вносятся изменения.

Версия скрипта доступна здесь .

6 голосов
/ 25 июня 2009

Я использовал скрипт vss2hg.pl из здесь . Это Perl-скрипт, поэтому вам нужно сначала установить ActivePerl .

Работало отлично, но я столкнулся с проблемой с датами. Оказывается, скрипт поддерживает три вида форматов даты. По умолчанию для него установлен формат даты в Великобритании (в строке 547). Два других формата даты закомментированы в коде. После включения формата даты в США скрипт без проблем преобразовал мою базу данных SourceSafe.

5 голосов
/ 07 июня 2009

В вики Mercurial есть эта страница, которая может представлять интерес: https://www.mercurial -scm.org / wiki / SourceSafeConversion . Я никогда не использовал Visual Source Safe, поэтому у меня нет личного опыта с ним.

Я также нашел письмо от Патрика Мезара на эту тему, но, к сожалению, он пишет, что конвертер VSS будет трудным. Он также говорит о преобразовании сначала в Subversion, а затем из Subversion в Mercurial. Я думаю, это означает, что есть VSS -> SVN конвертирует там. Вы, вероятно, можете гуглить это сами.

3 голосов
/ 04 декабря 2010

Я сделал преобразование из SourceSafe в Mercurial для клиента. Сначала я преобразовал базу данных SourceSafe в хранилище Subversion, а затем из Subversion в Mercurial, используя расширение hg convert. Подробнее см. в моем блоге .

0 голосов
/ 25 мая 2010

Я просто попытался использовать vss2hg и столкнулся с проблемой, что он только подхватил и преобразовал 1 пользователя Это означает, что все мои изменения и т. Д. Не будут точными, так как я не смогу увидеть, кто их сделал. Это потому, что я не настроил всех необходимых пользователей в hg?

...