Edytuj stronę Odnośniki Fold/unfold all ODT export Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić. ====== TFS laboratoria ====== ===== Pierwsze łączenie z TFS ===== * otwórz w przeglądarce internetowej stronę pod adresem: ''http://158.75.104.45:8080/tfs'' * wybierz kolekcję ''test'' i połącz się z projektem zespołowym ''Figury Projekt Zespolowy'' * przejdź do zakładki ''Code'' i obejrzyj zawartość projektu w przeglądarce * sprawdź listę użytkowników przypisanych do projektu * w panelu administracyjnym sprawdź uprawnienia członków zespołu dotyczące systemu kontroli wersji. Wszyscy użytkownicy należą do grupy ''npr''. Czy wszyscy z zespołu mogą dokonywać zmian w kodzie projektu ''Figury''? * zmień dane osobowe w profilu użytkownika: nazwę, adres e-mail, zdjęcie * obejrzyj kod zawarty w projekcie ''Figury'' * sprawdź historię przesyłanych plików do repozytorium (Changesets/History) * porównaj zmiany naniesione w kilku ostatnich zestawach zmian * przejrzyj historię zmian pojedynczego pliku (np. ''Program.cs'') * wyszukaj wszystkie zmiany dokonane w projekcie przez użytkownika ''pk00'' * dowiedz się jakie zmiany zostały naniesione w zestawie nr 39 w pliku ''Figura.cs'' * pobierz projekt w postaci paczki ''zip'' * połącz się z projektem zespołowym ''Figury Projekt Zespołowy'' korzystając z Visual Studio \\ **Team -> Connect to Team Foundation Server** ===== Git w Visual Studio ===== **Projekt w lokalnym repozytorium** - Utwórz nowy projekt w VS2015 tworząc jednocześnie lokalne repozytorium git lub dodaj do repozytorium istniejący projekt - dokonaj zmiany w kodzie i zatwierdź zmiany (//commit//) w repozytorium - obejrzyj historię zmian - przywróć poprzednią wersję kodu sprzed poprzedniego zatwierdzenia - wyeksportuj repozytorium do jednego z projektów zespołowych w TFS i obejrzyj historię zmian w przeglądarce WWW **Praca zdalna** - Utwórz nowe repozytorium git na serwerze TFS lub w usłudze VSTS - Sklonuj repozytorium za pomocą VS2015 i dokonaj edycji kodu w projekcie - Skonfiguruj repozytorium git ustawiając poprawną nazwę użytkownika oraz e-mail - Dodaj pliki do zestawu zmian, które będą rewizjonowane i dokonaj zatwierdzenia - Obejrzyj zawartość pliku ''.gitignore'' w katalogu projektu - zatwierdź zmiany (//commit//) - wyślij zmiany do serwera (//pull//) - pobierz najnowszą wersję ze zdalnego repozytorium (//pull//) **Rozgałęzienia** - Utwórz nową gałąź (//branch//) lokalną - Dodaj nowe pliki do repozytorium i zmodyfikuj istniejący kod a następnie zatwierdź zmiany lokalnie - Scal nową gałąź z gałęzią główną i usuń niepotrzebną gałąź **Konflikty** - Utwórz gałąź i zmodyfikuj jej zawartość. Zatwierdź zmiany i przejdź do bazowej gałęzi - Zmodyfikuj ten sam fragment kodu w bazowej gałęzi i zatwierdź zmiany - Połącz gałęzie (//merge//) nanosząc zmiany z nowej gałęzi do gałęzi bazowej i rozwiąż ewentualne konflikty ===== Podstawy obsługi systemu kontroli wersji TFVC ===== - Pobierz aktualną wersję rozwiązania ''Figury'' (zmapuj ją z wybranym folderem na lokalnej maszynie) \\ **Configure workspace -> Map & Get** - Zapoznaj się z operacjami z menu kontekstowego dostępnego po kliknięciu na różne elementy drzewa projektu (Solution Explorer) - Zapoznaj się z operacjami dostępnymi w oknie ''Source Control Explorer'' - Dodaj do projektu nowy plik o nazwie ''pkN.cs'' (gdzie ''N'' - numer stanowiska) zawierający kolejną klasę dziedziczącą po klasie ''Figura''. Zaimplementuj wymagane metody abstrakcyjne. Przed zatwierdzeniem zmian zapoznaj się z możliwościami okna list zmian **Pending Changes**. Zatwierdź zmiany w repozytorium (**Check In**). Nie zapomnij dodać komentarza opisującego naniesione zmiany. - Uaktualnij projekt do najnowszej wersji. Sprawdź czy na pewno wszystkie pliki zostały uaktualnione. - W pliku ''Kolo.cs'' do klasy ''Kolo'' dodaj metodę o nazwie ''PK_N''. Zawartość metody może być dowolna, np. niech metoda rzuca wyjątek. - Przed zatwierdzeniem zmian porównaj plik ''Kolo.cs'' z wersją umieszczoną na serwerze (Latest Version) oraz z wersją lokalną przed zmianami (Workspace). Zatwierdź zmiany opatrując je odpowiednim komentarzem. - Pobierz aktualną wersję i rozwiąż ewentualne konflikty wybierając wersję z serwera - Obejrzyj historię zmian całego projektu oraz jednego z wybranych plików - Porównaj kolejne wersje pliku ''Kolo.cs''. Sprawdź czy udało się dodać metody wszystkim studentom. - Wyświetl plik ''Kolo.cs'' wraz z adnotacjami o dokonanych zmianach - Znajdź zmiany dokonane przez użytkownika ''pk1'' (Find->Changeset) - Pobierz pierwotną wersję pliku ''Kolo.cs'' i usuń plik ''pkN.cs'' - Cofnij wszystkie zmiany przed zatwierdzeniem ich do repozytorium - Utwórz w Visual Studio nowy projekt (lub otwórz istniejący), np. projekt WPF i dodaj do systemu kontroli wersji jako podkatalog projektu ''Figury Projekt Zespolowy'' \\ **Solution Explorer -> Add To Source Control** - W systemie kontroli wersji można przechowywać dowolne pliki, także nie związane z projektami VS. Spróbuj dodać do systemu kontroli wersji katalog zawierający plik tekstowy, grafikę i dokument stworzony w programie Word. Utwórz w tym celu nowe mapowanie pomiędzy katalogiem lokalnym a nowym katalogiem w projekcie zespołowym . Dodaj do katalogu nowe pliki (skopiuj je niezależnie od Visual Studio). W oknie ''Pending Changes'' uwzględnij zmiany wykryte automatycznie w lokalnych katalogach i zatwierdź zmiany w repozytorium. ==== Rozgałęzienia (branching and merging) w TFVC ==== - Utwórz nową gałąź projektu ''Figury'' i zmapuj ją z lokalnym katalogiem \\ **Branching and Merging -> Branch** - Obejrzyj hierarchię rozgałęzień \\ **Branching and Merging -> View Herarchy** - Dodaj nowy plik w gałęzi zawierający nową klasę i zatwierdź zmiany - Porównaj różnice w rozgałęzieniach - Połącz rozgałęzione projekty (**Merge**) - Prześledź dokonane zmiany za pomocą wizualizacji **View history -> Track Changeset** - Przekonwertuj gałąź na folder - Dodaj etykietę wybranej wersji projektu głównego oraz rozgałęzionego (Labels). Odszukaj zaznaczone zestawy zmian w historii. ==== Nowy projekt zespołowy ==== Zadanie wykonywane w zespołach 2, 3 lub 4 osobowych osobowych (osoby siedzące przy sąsiednich stanowiskach komputerowych). Zadaniem jest wykonanie prostej aplikacji, która przeprowadza losowanie ''k'' liczb z ''n'' i wyświetla wynik w oknie. W projekcie powinna znaleźć się klasa, która udostępnia metodę zwracającą tablicę/kolekcję liczb całkowitych z wylosowanych bez zwracania z puli od 1 do N. Aplikacja okienkowa pozwala zdefiniować wartości '''k'', ''n'' oraz liczbę powtórzeń losowań a następnie wciśnięciu przycisku powinna wyświetlać w odpowiedniej kontrolce serię losowań. Role w zespole: * zarządca projektu tworzy projekt zespołowy w kolekcji ''sandbox'' \\ **File -> New -> Team Project** * zarządca dodaje członków zespołu i nadaje odpowiednie uprawnienia każdemu z nich * pierwszy programista odpowiedzialny jest za utworzenie projektu programistycznego, dodanie go do projektu zespołowego na serwerze TFS w kolekcji ''sandbox'' oraz stworzenie interfejsu graficznego i oprogramowanie kontrolek * drugi programista tworzy klasę odpowiedzialną za generowanie losowań * grafik (w zespołach 4 osobowych) tworzy i dodaje do projektu logo zespołu, które będzie wyświetlane przez aplikację, np. w postaci splash screanu ===== Visual Studio Team Services ===== * Zaloguj się do usługi Visual Studio Team Services i utwórz nowe konto (//account//) w ramach, którego załórz projekt zespołowy wykorzystujący system kontroli wersji git oraz szablon produkcyjny Scrum * Wyeksportuj dowolny projekt z Visual Studio do utworzonego repozytorium git * Wyślij zaproszenie do nowych członków zespołu (m. in. do prowadzącego zajęcia) * Sprawdź zawartość repozytorium przez przeglądarkę WWW * Spróbuj zmodyfikować kod umieszczony w repozytorium otwierając wybrany plik w przeglądarce internetowej