Мерзавец к миграции управления исходным кодом TFS

Я хотел бы видеть, как TFS будет работать на мою команду. Таким образом, я хотел бы переместить наш текущий репозиторий МЕРЗАВЦА в базу данных TFS. Мы использовали МЕРЗАВЦА, поскольку это преобладало, переходя поддержка, таким образом, я хотел бы использовать 2010 TFS для решения той проблемы.

Теперь вопрос. Как я экспортирую нашего МЕРЗАВЦА repo в TFS. Очевидно, это - некоторый сценарий. Действительно делали кого-либо это? Какие-либо предложения?

Спасибо.

16
задан Jonathan Nixon 25 February 2014 в 02:47
поделиться

3 ответа

Вы можете экспортировать git в svn и использовать CS-преобразователь для перехода от svn к TFVS. Обратите внимание - CS-конвертер был остановлен, но, похоже, вы всё ещё можете его скачать.

0
ответ дан 30 November 2019 в 22:37
поделиться

Настроить SVNBridge в TFS, а затем используйте git-svn clone.

2
ответ дан 30 November 2019 в 22:37
поделиться

Я создал быстрый пакетный файл, но вам нужно иметь Team Foundation Power Tools (tfpt.exe) в пути и For (команда цикла командной строки)

Visual Studio Command line в нужную папку git и запустить следующее.

git log --pretty="'%%H',%%ci - %%s" --reverse > commits

tf workspace temp /new /s:http://{TfsInstance} /i
tf workfold /map %2 . /workspace:temp

FOR /F "tokens=1* delims=','" %%a IN (commits) DO git checkout %%a && tfpt online /recursive /exclude:.git*,commits,*.obj,*.exe,_ReSharper*,obj,debug,*.user,*.suo,Bin /adds /deletes /i && tf checkin /author:"{AuthorName}" /comment:"%%b" /i

tf workspace temp /delete /i
  1. Сначала создается файл коммитов со всей информацией о коммитах в обратном порядке (самый ранний первый).
  2. Затем создается рабочее пространство Team Foundation... (обязательно замените {TtsInstance} на URI вашей TFS.
  3. Затем создается временная папка в рабочем пространстве.
  4. Затем он просматривает каждую строку в файле коммитов, делает checkout из git, использует TFPT для проверки текущих файлов (опять же, не забудьте заменить {AuthorName} на ваше имя автора), комментарий будет включать метку времени из git (к сожалению, вы не можете изменить время проверки без изменения времени сервера TFS, и я бы не рекомендовал этого делать) и оригинальное имя автора.

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

Надеюсь, это поможет кому-то сэкономить время!

5
ответ дан 30 November 2019 в 22:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: