2012-06-26 7 views
1

Попробуйте преобразовать VSS 6.0 в SVN с помощью этого инструмента VSSMigrate. Я получил следующую ошибку.Migration VSS 6.0 to SVN

System.InvalidCastException: Unable to cast COM object of type 'SourceSafeTypeLib.VSSDatabaseClass' to interface type 'SourceSafeTypeLib.IVSSDatabase'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{2A0DE0EE-2E9F-11D0-9236-00AA00A1EB95}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)). at SourceSafeTypeLib.VSSDatabaseClass.Open(String SrcSafeIni, String Username, String Password) 

Что я знаю эту ошибку, текущий инструмент миграции не может поддерживать VSS 6.0 и поддерживает только VSS 2005. Итак, есть ли какие-либо другие инструменты для миграции VSS 6.0 для SVN

+1

Лучшая ставка - это просто архив текущей VSS и просто проверка текущей структуры на svn –

ответ

1

Вы можете использовать этот инструмент:

http://www.polarion.com/products/svn/svn_importer_features.php#VSS

он свободен, но я не знаю, если это полезно.

Они утверждают:

мигрирует инструмента vss2svn и преобразует данные из MS Visual SourceSafe в Subversion.

  • Внешний сс инструмента используются для доступа к хранилищу VSS (часть ВССА распределения клиента)
  • преобразования сохраняет ревизию, автор, совершает сообщения и даты фиксаций
  • Logging (выход на консоль, уровень регистрации) может быть настроен в файле конфигурации (с использованием конфигурации log4j)
+0

vss2svn не перемещает VSS 6.0. Вам нужно иметь VSS, который был отправлен с 2005 года для его работы. Хочешь знать, как я знаю? Я просто попробовал LOL – jnoreiga

1

Я помог написать один на codeplex, из существующего приложения. Это сработало для меня, было легко, но потребовалось много времени, чтобы захватить гигабайт исторических данных и передать все это SVN.

Я попытался сделать это как можно проще. Конечно, если вам не нужна история, самым простым способом является проверка всего БД VSS и добавление его в новое репо SVN с использованием in-place commit.