Полное раскрытие, я работаю в команде, которая пишет инструментарий Java для TFS, поэтому воспринимайте этот ответ как должный уклон: -)
Что касается TFS - весь код создан равным. Это просто байты в файлах, которые проверяются для контроля версий. Как и во всех системах SCM, не важно, на каком языке записаны файлы.
Microsoft предоставляет полный, TFS-плагин для Eclipse (который называется Team Explorer Everywhere). Это обеспечивает полный контроль над исходным кодом, отслеживание рабочих элементов, сборку, совместное использование, доступ к отчетам и т. Д. В TFS из IDE на основе Eclipse. Он написан на 100% Java и напрямую связан с веб-сервисами, предоставляемыми TFS.
Кроме того, мы также предоставляем кроссплатформенный клиент командной строки для TFS , чтобы вы могли общаться с TFS из командной строки в выбранной вами операционной системе (Mac, Linux, Solaris, HP-UX). , AIX и т. Д. Все полностью поддерживается).
Наконец, если у вас есть инструменты, написанные на Java, которые хотят общаться с TFS, тогда они могут использовать TFS SDK для Java , который является полным API, который мы использовали для создания интеграции Eclipse и перекрестного взаимодействия. -платформенный клиент командной строки, но упакованный с примерами и фрагментами и готовый для повторного распространения с вашими приложениями.
Когда дело доходит до постройки, у вас есть пара вариантов. Если вы хотите придерживаться своего текущего сервера сборки, то вполне вероятно, что он уже поддерживает общение с TFS (это делают все популярные серверы сборки с открытым исходным кодом). В дополнение к этому Microsoft предоставляет Расширения сборки TFS , которые позволяют запускать сборки на основе Ant или Maven на сервере Team Foundation Build. Результаты сборки (вместе с любыми предупреждениями или ошибками) публикуются обратно в TFS вместе с любыми данными теста JUnit, если вы выполняете тесты JUnit как часть вашей сборки. Кроме того, вы можете создавать и управлять определениями сборки в Eclipse IDE и иметь одно место для управления доступом к ним и т. Д.
Итак - уровень поддержки Java очень высок, и Microsoft показала постоянные инвестиции в эту область. Недавно мы поставили несколько TFS 2010 Power Tools для Eclipse , и мы также поставляли предварительные выпуски Team Explorer Everywhere 11 вместе с Team Foundation Server 11 (мы та же команда внутри компании).
Импортировать историю из SVN - это то же самое, что импортировать историю из любого инструмента SCM в TFS (или TFS в любой инструмент SCM). У вас есть несколько вариантов. Вы можете сделать снимок и обрезать в определенной точке (например, выпуск) или вы можете перенести историю. Для переноса истории из SVN есть несколько партнерских решений, включая одно из Своевременная миграция , с которым, как я видел, многие клиенты добились успеха.
Надеюсь, это поможет.