Team Explorer Everywhere – czyli TFS i Eclipse w jednym stali domu 

Udostępnij na: Facebook

Autor: Grzegorz Rycaj

Opublikowano: 2011-05-20

Jak pisałem we wcześniejszych artykułach poświęconych przeglądowi narzędzi ułatwiających pracę z Team Foundation Serverem, jest on systemem umożliwiającym swobodną i komfortową współpracę wszystkim członkom zespołu. Nie zapomniano tu również o drużynach i programistach wytwarzających oprogramowanie w innych środowiskach programistycznych, niż Visual Studio. Jedną z opcji jest wykorzystanie dodatku Team Foundation Server MSSCCI Provider 2010(https://visualstudiogallery.msdn.microsoft.com/bce06506-be38-47a1-9f29-d3937d3d88d6), pozwalającego na pracę z poziomu środowisk niewspierających integracji z Team Explorem(jak np. Visual Studio 2003, lub SQL Management Studio). Wspomniany dodatek pozwala jednak na pracę wyłącznie z repozytorium kodu, choć w wielu przypadkach i takie udogodnienie jest bardzo pomocne.

W niniejszym materiale przedstawimy możliwości, jakie oferuje dodatek do środowiska Eclipse o nazwie Microsoft Visual Studio Team Explorer Everywhere 2010.

Instalacja

Aby rozpocząć pracę z Microsoft Visual Studio Team Explorer Everywhere 2010, należy pobrać go ze strony https://www.microsoft.com/downloads/en/details.aspx?FamilyID=53C27216-C4F0-48B6-9BED-FE1718A2E3B0. Warto odnotować, że pod nazwą tego dodatku kryje się także klient linii poleceń, dzięki któremu mamy możliwość pracy z TFS z poziomu jednego z systemów operacyjnych:

  • Windows XP SP2 , Windows Vista, Windows 7 (x86, x64),
  • Linux z biblioteką GLIBC w wersjach 2.3 do 2.11 (x86, x86_64, PowerPC),
  • Mac OS X w wersjach 10.5 do 10.6 (PowerPC, Intel),
  • Solaris w wersjach 8, 9, 10 (SPARC, x86, x86-64),
  • AIX w wersjach 5.2 do 6.1 (POWER),
  • HP-UX 11i v1 to v3 (PA-RISC, Itanium).

Mówiąc o kliencie linii poleceń, należy również wspomnieć o dwóch popularnych aplikacjach tego typu przeznaczonych dla systemów rodziny Windows, które pokrywają lub rozszerzają funkcjonalności dostępne z poziomu aplikacji graficznych, omawianych w poprzednich artykułach.

Pierwsza z tych aplikacji to tf.exe, służąca do komunikacji z repozytorium kodu. Szczegółowe informacje na temat jej składni wraz z przykładami użycia(również tymi wykraczającymi poza możliwości dostępne np. z poziomu Visual Studio) dostępne są na stronie https://msdn.microsoft.com/en-us/library/cc31bk2e(v=VS.100).aspx.

Drugim z klientów linii poleceń dla systemów Windows jest tfpt.exe, wchodzący w skład pakietu TFS Power Tools(najnowsza wersja pochodzi z Marca 2011 i jest dostępna pod adresem: https://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f), którego fragment omawiałem już w jednym z poprzednich artykułów. Aplikacja TFPT pozwala również na wykonywanie operacji nie tylko w kontekście repozytorium kodu, ale też np. na zarządzanie Work Itemami, stworzenie nowego projektu, czy też przeszukiwanie historii changesetów pod kątem specyficznych kryteriów.

Klienci linii poleceń(zarówno ten wchodzący w skład Team Explorer Everywhere, jak i omawiane powyżej narzędzia tf.exe i tfpt.exe) nie będą jednak przedmiotem dalszej części niniejszego artykułu, skupimy się wyłącznie na dodatku do środowiska Eclipse(również, jak wiadomo, posiadającego wersje dla wielu platform).

Instalacja przebiega bezproblemowo, zgodnie z instrukcją(plik InstallTEE.htm) dostępną pod podanym wyżej linkiem. Cały proces sprowadza się właściwie do użycia polecenia Help->Install New Software i wskazania na naszym dysku twardym pobranego archiwum z pluginem.

Jeśli nie posiadamy klucza licencyjnego, dodatek zostanie zainstalowany w trybie 90-dniowej, w pełni funkcjonalnej ewaluacji.

 

Rysunek 1. Instalacja dodatku Team Explorer Everywhere w Eclipse.

Uruchomienie i praca z dodatkiem

Po ponownym uruchomieniu Eclipse’a do naszej dyspozycji zostaje oddany widok Team Explorer – opracowany w sposób analogiczny do widoku o tej samej nazwie, dostępnego w Visual Studio.

Rysunek 2. Widok Team Explorer.

Aby podłączyć się do serwera, wybieramy polecenie Add Existing Team Project (nie ma możliwości utworzenia projektu zespołowego na TFS z poziomu środowiska Eclipse), następnie Servers->Add i dalej, przechodząc przez kolejne kroki kreatora, definiujemy połączenie z serwerem.

Rysunek 3. Podłączanie do serwera – wybór projektów.

Warto zauważyć, że opracowując dodatek, we wszystkich miejscach dołożono starań, aby osoby znające interfejs pracy zespołowej w Visual Studio nie czuły się tu obco – jak widać już na powyższych rysunkach (a to tylko pierwsze z wielu przykładów), wyświetlone drzewo projektowe jest dokładnym odwzorowaniem interfejsu znanego nam z Visual Studio (omawianego w poprzednich częściach cyklu). Możemy zarządzać jednostkami roboczymi, przeglądać pliki z portalu projektowego dostępnego w Microsoft SharePoint, przeglądać i zlecać automatyczne procesy budowania i, oczywiście (a może przede wszystkim) – pracować z repozytorium kodu.  Jeśli chodzi o automatyczny proces budowania kodu i zastosowanie praktyki Continous Integration, istnieje możliwość uruchomienia testów opartych na skryptach Ant’owe i Maven’owe, wraz ze zautomatyzowanym pokryciem testami JUnit. Aby z tych mechanizmów skorzystać, należy „wyposażyć” serwer TFS w dodatek Team Foundation Server Build Extensions Power Tool March 2011 (do pobrania z galerii aplikacji Visual Studio: https://visualstudiogallery.msdn.microsoft.com/2d7c8577-54b8-47ce-82a5-8649f579dcb6).

Poza widokiem Team Explorer do dyspozycji mamy również widoki: Source Control, Pending Changes, History oraz Gated Check-ins.

Rysunek 4. Praca z repozytorium kodu – menu kontekstowe.

Jak widać na rysunku 4 , portowaniu uległa znaczna większość komend dostępnych w Visual Studio. Możemy zatem pobrać m.in. zmiany z serwera i przekazać nasze modyfikacje, zablokować plik do edycji, przejrzeć historię czy też zarządzać gałęziami kodu. Brakuje naturalnie wizualizacji struktury gałęzi, znanej z Visual Studio 2010, ale najważniejsze operacje na gałęziach (tworzenie/scalanie zmian/rozwiązywanie konfliktów) jak najbardziej są dostępne.

Po wykonaniu check-in pokazuje nam się dobrze znane okno, w którym poza wybraniem plików do umieszczenia w repozytorium mamy możliwość podpięcia jednostek roboczych, możemy wpisać notatki (Check-in notes), a nasze zmiany podlegają sprawdzeniu wbudowanymi mechanizmami reguł (Check-in policies).

Rysunek 5. Wykonywanie check-in.

Nie istnieją ograniczenia, jeśli chodzi o współistnienie projektów .Net’owych i Java’owych w tym samym projekcie zespołowym (Team Project) na TFS. Należy jednak rozsądnie planować strukturę repozytorium, biorąc pod uwagę mechanizmy dodatkowe (np. Gated check-in albo zarządzanie gałęziami projektowymi).

Poza umieszczeniem naszych zmian na serwerze, możemy dla nich stworzyć etykietę (Label) albo odłożyć na półkę (Shelve) – a więc ponownie wykorzystać mechanizmy znane z pracy z poziomu Visual Studio. Mechanizm workspace obowiązuje dla całego naszego systemu, a więc zmiany dokonane w ramach Eclipse są widoczne w Visual Studio i odwrotnie. Możemy bez problemu dokonywać zmiany w obu tych środowiskach, aby finalnie z poziomu jednego z nich wykonać check-in.

Praca z jednostkami roboczymi

Jak już pisałem w artykule poświęconym przeglądowi interfejsu Visual Studio 2010 i innych narzędzi ułatwiających pracę zespołową, mamy możliwość pracy z jednostkami roboczymi, korzystając z wielu narzędzi (również specjalistycznych, jak Microsoft Excel czy Microsoft Project), jednak zawsze podejście do pracy z nimi jest spójne. Nie inaczej dzieje się w przypadku dodatku Team Explorer Everywhere – przeglądanie jednostek zaczynamy od wybrania jednego z dostępnych zapisanych zapytań (są to te same zapytania, które wykorzystujemy w innych aplikacjach) lub od zbudowania własnego.
Formularz edycji każdej jednostki roboczej również jest odwzorowaniem graficznym znanego nam już interfejsu, łącznie z  takimi informacjami, jak połączenia pomiędzy jednostkami roboczymi, załączniki czy też historia zmian.

Rysunek 6. Praca z jednostkami roboczymi.

Podsumowanie

Poczynając od wersji 2010, Microsoft umożliwia składom programistycznym objęcie zakresem Team Foundation Servera również zespołów wykorzystujących podczas pracy środowiska inne, niż Visual Studio. Wcześniej taka możliwość była realizowana za pośrednictwem dodatków wytwarzanych przez firmy trzecie, obecnie dodatki te wchodzą w skład zintegrowanej oferty rodziny Visual Studio.

Jak zaprezentowano w powyższym artykule, dołożono wszelkich starań, aby osoby wdrażające się do pracy z TFS nie musiały poświęcić na naukę wiele czasu – szczególnie docenią to osoby pracujące z różnymi narzędziami, opisywanymi w tym i poprzednich częściach cyklu pt. „Przegląd interfejsu Visual Studio 2010 i innych narzędzi ułatwiających pracę zespołową przy produkcji oprogramowania”.