company_banner

Интеграция Team Foundation Services с Git и другие новые возможности

    imageСегодня произошел большой шаг вперед в развитии Team Foundation Services — облачного сервиса Microsoft для разработчиков. Последние несколько месяцев команда TFS вела работу над новыми возможностями которые делают эти сервисы еще проще, удобнее и эффективнее. Одним из самых громких нововведений является интеграция популярной системы контроля версий Git с сервисами TFS. Работа на этом не прекращается и в обозримом будущем будет добавлено еще много интересных функций.


    Поддержка Git



    Разработка современных приложений все чаще ведется распределенными и независимыми командами которые используют разделение кода. Это породило большой интерес к распределенным системам контроля версий. Один из таких инструментов, Git, получил поддержку в Team Foundation Services.
    Теперь при создании проектов TFS вы можете выбирать, какую систему контроля версий использовать — родную TFVC или Git.

    image

    Декларируется полная поддержка, интеграция и 100% совместимость с Git. Вы можете использовать улучшенный веб-интерфейс просмотра базы исходных кодов в TFS интегрированной с Git. Выглядит это так же привычно как и для TFSVC базы с небольшим дополнением в виде опции быстрого клонирования.
    image

    Также вы можете с легкостью просматривать коммиты:
    image
    Видеть внесенные в код изменения:
    image
    Но это все равно тот же самый Git доступный клиентам из командной строки, XCode, и других существующих реализаций.
    image

    Естественно некоторые функции интеграции с Git требуют переработки существующих интерфейсов взаимодействия с системой контроля версий в самой Visual Studio. Теперь при внесении изменений в базу кода вы можете так же выбирать ветку (branch selector).
    image

    Вы можете легко настроить важные опции конфигурации Git через Visual Studio, например имя пользователя от лица которого вносятся изменения:

    image

    Поддерживаются все команды и идеология Git. Например локальные коммиты:

    image

    Pull. Push:
    image
    Fetch:
    image
    Создание веток:
    image
    Разрешение конфликтов при слияниях веток и коммитов:

    image

    Остальные возможности, привычные пользователям TFSVS так же остались и при использовании Git. При создании изменений в коде вы можете ассоциировать их с задачами, осуществлять автоматическую сборку проекта из репозитария Git.
    image

    Поддержка тегов для рабочих элементов (задач, багов, требований и.т.п.)



    На текущий момент в Team Foundation Services нет возможности изменения существующих или добавления новых полей рабочих элементов, эта возможность есть только в случае если вы устанавливаете TFS локально, у себя в организации.
    Теги помогают ввести в рабочие элементы категории, которые структурируют их в группы, без всякой дополнительной настройки.
    Просто напишите текст в тег и используйте его в нужных вам рабочих элементах.
    image
    В дальнейшем при работе над списками рабочих элементов, теги будут выводиться на экран, позволяя быстро фильтровать данные.
    image
    Просто нажмите на тег и в результате будут выведены только те задачи которым он присвоен.
    image

    Управление тестами



    В группу продуктов Visual Studio 2012 входит инструмент для автоматизации тестирования – Microsoft Test Manager. С помощью него можно планировать наборы тестов, осуществлять тестирование продукта, отслеживать прогресс. Мы получили отзывы от наших некоторых клиентов о том что в некоторых сценариях установка этого продукта в эксплуатационную среду порой бывает запрещена и усложняет процессы тестирования (так называемый zero impact test experience). Ряд новых функций Team Foundation Services помогает в таких случаях так как в нем появилась возможность работать с ручными тестовыми планами и самими тестами через браузер.
    В специальном хабе тестов вы сможете увидеть планы, варианты тестов, кому назначены на исполнение планы а так же их статусы прохождения:
    image
    Так же, прямо из браузера вы можете осуществлять их «запуск» для прохождения шаг за шагом всех тестов входящих в тестовый план:
    image

    Надеемся что новые изменения и функции Team Foundation Setvices вам понравятся. Напомню что попробовать их вы можете прямо сейчас, зарегистрировавшись по адресу tfs.visualstudio.com. Этот сервис на текущий момент является бесплатным и в будущем останется бесплатным для команд до пяти пользователей. Поддержка Git включена в Update 2 Community Tecnology Preview для Visual Studio 2012.
    Microsoft
    402.60
    Microsoft — мировой лидер в области ПО и ИТ-услуг
    Share post

    Comments 32

      +1
      Как насчет миграции из собственного версионника tfs в git с сохранением истории?
        +2
        Например с помощью github.com/git-tfs/git-tfs
          0
          кстати, зачем тогда делали тулзу git-tf, практически повторяющую git-tfs, чтобы через полгода включить git в tfs нативно?
            0
            Чтоб народу легче жилось. Я за git-tf благодарен сердечно.
        0
        Если не секрет, как это реализовано на стороне Visual Studio? По последней информации, git как библиотека отсутствовал, велись работы по libgit2 — но состояние проекта было противозачаточное. Visual Studio скачивает локально бинарник git и вызывает его / парсит вывод? Или собственная имплементация протокола?
          –7
          Неужто Вы не верите, что Майкрософт свою реализацию протокола написала?
            0
            Мне абсолютно все равно какую реализацию они выбрали. Мне это интересно ради лучшего понимания текущей деспозиции в технологиях.
            +6
            Никто ничего не парсит. Человек 5 из MS помогали делать libgit2 libgit2.github.com/ там появилось много фич.
              +3
              То есть допилили libgit2? Позитивно.
                +1
                Смотрите как преобразился их сайт.
                  0
                  оформление очень похоже на git-scm.com
                    0
                    Я имел ввиду, что еще пару дней назад он был совсем другой
              +7
              Там целая команда из MS перешла на работу в Github где усердно допиливала libgit2 и прочие делала прочие контриьбшны в апстрим гита.

              У Хансельмана больше деталей.
              +6
              Есть планы по поддержке mercurial?
                +4
                Да, mercurial было бы приятно увидеть. Но чем дальше, тем боле гита везде и всюду и поддержкой mercurial в своих продуктах уже мало кто хочет заморачиваться.
                  0
                  Вот и интересно узнат как на это смотрят специалисты из микрософта. Лишняя гирька на чашку весов.
                    +2
                    Я не могу озвучивать планы DevDiv. Но работа по унификации интерфейса vsix с различными системами контроля версий проделана очень большая.

                    P.S. Кое где mercurial будет пологичнее Git.
                      0
                      Хорошо, я так клиентам и передам — «планы скрывают» :).
                –5
                Наконец-то, новые, нескучные обои!

                image
                  0
                  Это всё интересно, однако
                  Team Foundation Server – Our plan is to include Git support in the next major release of TFS. No date has yet been announced.

                  Очень хочется локального сервера =(
                    0
                    Вот сделали бы ещё веб-интерфейс, который не тормозит и живёт независимо от монструозного SharePoint'а. Почему-то формочки создания и просмотра WorkItem'ов в Visual Studio раздражают…
                      +1
                      На SharePoint сделана небольшая часть работы с документами и отчетами. В остальном веб-интерфейс TFS никак с SharePoint не связан и никаких компонент от него не использует.
                        0
                        он и так живет независимо, в чем вопрос?
                          0
                          — Ну, например, как быстро (и не в IE) посмотреть список work Items по заданному критерию (запрос, например)?

                          — Как открыть несколько задач в разных табах, а не во всплывающих окошках?

                          — Как управлять видимостью Query через Web (Team Query vs. My Query)?

                          Ну и ещё, наверное, самый, наверное, раздражающий для меня сейчас фактор: как применить действие ко всем Work Items в списке (они могут быть разных типов). Например, махом перекинуть из одной итерации в другую или назначить на одного разработчика. Да, знаю про Work Item Templates, но создавать отдельный template для каждого типа Work Item'а каждый раз, когда я хочу скинуть «остатки по итерации» на следующую — ИМХО перебор.
                            0
                            Задачи которые вы описываете легче и эффективнее делать в team explorer. Для групповых операций используйте плагин для Excel.
                              +1
                              Спасибо, в общем-то — так и делаю. Но вопрос был изначально — что не устраивает в веб-интерфейсе. Ну, и вообще, чисто субъективно, немного странно, что мне нужен Excel и Visual Studio для нормальной работы с TFS.

                              Особенно, если сделать вид, что я «просто менеджер» и мне Visual Studio в ежедневных задачах… хм… не особенно требуется, а надо отслеживать лишь прогресс работы и управлять объёмом задач в итерации.
                        0
                        А можно интегрировать Team Foundation Service с github как таковым?
                        Работает ли Code Review из стандартного скрамовского шаблона?
                          0
                          Например с помощью github.com/git-tfs/git-tfs
                          это гейт двухсторонний.
                            0
                            Неее, я не про это.

                            Пусть у меня есть гитовский (не TFVC!) репозиторий в Team Foundation Service (https://tfs.visualstudio.com/). Я хочу использовать его функциональность по управлению тасками, но при этом хочется прозрачно отзеркалить релизную, например, ветку на гитхаб в открытый доступ.
                              0
                              DVCS на то и DVCS потому что там такие сценарии реализуются в две команды. Это совершенно стандартный сценарий.
                                0
                                Эти две команды кто-то должен запустить. Со стороны гитхаба можно настроить хук, который заберет изменения из другого репозитория. Но кто-то же должен дернуть за этот хук в момент коммита?
                            0
                            Вопрос несколько странный в контексте Git. Вы можете свои репы клонировать куда угодно, хоть в гитхаб хоть на луну. Лить туда код, мержиться с изменениями в обратную сторону. В этом суть идеологии Git. Насчет Code Review не уверен на 100%, не проверял но думаю что работает.

                          Only users with full accounts can post comments. Log in, please.