2009-11-06 2 views
17

Использование Git дома испортило мне - теперь я нахожу, что TFS на работе немного перетаскивается и вы хотите изучить возможность локального использования Git и синхронизации с TFS. Я полагаю, что это можно сделать несколькими способами, и хотелось бы услышать от людей, которые его пытались.Использование Git в магазине TFS

Я нашел blog post, который описывает относительно ручной рабочий процесс, но я надеюсь на что-то с лучшей автоматизацией и поддержкой истории.

Джим Девилль, похоже, пишет series о том, как команда IronRuby хранит репозиторий github в синхронизации с TFS, но она еще не завершена, и я должен признать, что у меня была небольшая проблема после того, что Джим написал до сих пор.

Я кратко попытался использовать комбинацию SvnBridge и git-svn, но я быстро застрял на ошибке (возможно, this один?). Я намерен изучить это далее ...

Обновление: Похоже, что некоторые люди добились успеха с помощью комбинации SvnBridge git-svn. См. here.

Наконец, возможно, GitSharp облегчит разработку полезного решения этой проблемы? Не потому, что GitSharp имеет какое-то отношение к TFS как таковой, а просто потому, что он предоставляет git-автоматизацию для разработчиков .NET.

Связанный Вопрос - Git and Team Foundation Server

+0

Я в замешательстве об этом связанном вопросе edit - в чем смысл вставить ссылку для ссылок? –

+8

Я еще не уверен, я все еще слежу за связанными вопросами ... –

+0

@Paul Batum: Это не может быть связано больше! (Исправлено) –

ответ

3

Microsoft наконец released свое собственное решение моста: Git-TF. Он использует Java, поэтому он работает в Windows, OSX и Linux.

Редактировать: Начиная с 2013-01-30, Microsoft является announcing еще большей интеграцией между TFS и Git, чтобы точно определить вашу ситуацию. Он будет доступен через обновления к версиям TFS и Visual Studio 2012 года.

+0

Не знаю, насколько хорош этот инструмент на самом деле, но хорошая находка. – R0MANARMY

+1

@ R0MANARMY, зависит от вашего репозитория TFS. Используя его против тестового репо, я обнаружил, что он хорош, но только довел до конца. Затем я обнаружил вариант «-deep» и получил полный клон. Я тогда попытался против нашего производства TFS, через 17 часов он все еще на 20%! Я думаю, что этот инструмент будет полезен для больших проектов, чтобы оставить TFS, но такие же большие проекты вряд ли смогут использовать описанным образом. –

+0

@RayHayes Я уверен, что в ближайшее время будет организован государственный праздник (ish). Долгий уик-энд и молитва о том, что нет перебоев в подаче электроэнергии, и вам должно быть хорошо идти. – R0MANARMY

1

Работа с вышестоящей системой управления версии будет иметь не только положительное влияние на вас; это положительно скажется на всей вашей команде. Может возникнуть сопротивление начать, но в конечном итоге выгоды, которые вы видите, скорее всего, будут замечены остальной частью команды.

Простые предложения о конвертации вашего "TFS shop" Что-то новое. Вы найдете оттуда три вида людей:

  1. те, кто готов попробовать ваше предложение, потому что он дает им возможность узнать что-то новое.
  2. те, которые уже попробовали ваше предложение (я имею в виду на самом деле пробовал), но не согласен с вами
  3. те, которые отвергают ваше предложение, потому что они не хотят, чтобы узнать что-то новое

Первый два - это те люди, которых вы хотите поддерживать, независимо от того, согласны ли вы с ними или нет. Последний тип человека - это не только негативное влияние на команду в целом, но также и тот, на кого вы должны дистанцироваться.

Отказ от ответственности: Я знаю, что это не отвечает на вопрос напрямую, но я считаю, что это хороший подход, когда вы считаете, что изменение технологии оправдано.

Помимо: Когда бы вы ни называли свою команду «магазином TFS», «магазином Java», «магазином Windows» и т. Д., В вашей голове должен быть сигнал тревоги. Это огромный красный флаг.Различные технологии хороши для разных задач, а команда побивает команду.

+5

Я использую термин «магазин TFS», потому что мы используем TFS для управления версиями, отслеживания ошибок и управления компоновкой. Это не красный флаг - мы говорим о основных функциях разработки программного обеспечения, где стабильность важна. Я нахожу ваше предложение наивным, потому что он не упоминает об анализе риска и потенциальной отдачи от инвестиций, предлагаемых заменой одной системы управления источником на другую. Сейчас я считаю, что риски перевешивают награды. –

+0

У меня также есть оговорки относительно вашего внимания в «магазинах». Это простой факт, что многие магазины программного обеспечения специализируются на ориентации на определенную платформу или в отрасли. В общем, Java и .NET предоставляют очень похожие средства, и это может быть опасно для относительно небольшого магазина программного обеспечения (~ 40 сотрудников), чтобы разбавить его навык, настроившись на несколько платформ разработки. Я никогда не говорил об этом в своем оригинальном посте, но мой работодатель - это магазин .NET, и я утверждаю, что это не вредно использовать эту терминологию. –

+1

Извините, это звучит, как мой совет, поразил нерв. Это было не мое намерение. Вы выразили желание использовать инструменты _better_ на своем рабочем месте (предполагается, что вы используете слово «испорченный» _). В предположении нет наивности, потому что я рекомендовал предложить _proposal_ для изменения, которое по определению должно анализировать риск и вознаграждение. Если предложение о переключении технологий не может обеспечить достаточную награду в долгосрочной перспективе для вашего магазина, как вы можете оправдать решение TFS Git <-> TFS, предназначенное для вас самих? –

1

Я работал с Джимом Девиллом на инструменте «TFGit», который соединяет TFS и Git (я начал проект, фактически). Он очень автоматизирован, сохраняет автора, информацию о дате и историю. Наиболее существенная слабость заключается в том, что, хотя он позволяет игрокам git играть с ветвями в своем сердце, он может синхронизировать только с одной веткой на стороне TFS. Тем не менее, это довольно безболезненный инструмент для использования, и Джим и я используем его регулярно.

В настоящее время это внутренний инструмент для нашей компании, и мы не исследовали его публикацию. Если в этом есть большой интерес, мы можем это сделать.

+0

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

+0

Это звучит так, как будто я ищу; позволяя разработчикам создавать ветки и синхронизировать одну ветвь с TFS. Пожалуйста, подумайте об этом. – Jimothy

Смежные вопросы