Вот решение, которое сработало для меня пару лет назад. Когда я попробовал упомянутый vss2git, он за выходные унес нашу 9 ГБ базу данных vss в 103 ГБ, не доходя до конца.
Поэтому я взял сервер TFS (2010) в качестве посредника, и это сработало. TFS 2010 может импортировать базу данных VSS напрямую, я не уверен насчет новых. Одновременно TFS может служить в качестве удаленного git, например, используя git-tf или git-tfs. После импорта простой git tfs clone
выполнил вторую часть бизнеса. Итак, поехали:
- Получите версию TFS, способную импортировать VSS. Эта ссылка может вам помочь.
- Используйте мастер или командную строку для импорта базы данных VSS.
- Получить git-tfs от здесь
- (Необязательно) исправьте даты фиксации - см. Ниже.
- Сделай что-нибудь подобное
git tfs clone http://tfs:8080/tfs/DefaultCollection $/some_project
Единственное, что я могу вспомнить, было то, что TFS установил дату всех коммитов на текущую дату и поместил в комментарии исходные даты vss. Я исправил это непосредственно в базе данных SQLEXPRESS TFS следующим образом:
UPDATE tbl_ChangeSet
SET CreationDate = CONVERT (datetime, Substring(Comment,2,19), 104)
Where CreationDate > '2014-01-28' AND Comment LIKE '{%'
Пожалуйста, укажите в запросе собственную дату (последнего комита VSS).
https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2013/ms253060(v=vs.120)