Team Foundation Server 2017 Update 1 — informacje o wersji


Developer Community | Wymagania systemowe i zgodność | Postanowienia licencyjne | Blog TFS DevOps | Wartości skrótów SHA-1 | Najnowsze informacje o wersji programu Visual Studio 2019


Uwaga

To nie jest najnowsza wersja serwera Team Foundation Server 2017. Aby pobrać najnowszą wersję, odwiedź informacje o bieżącej wersji dla serwera Team Foundation Server 2018 Update 3. Język tej strony możesz zmienić, klikając ikonę kuli ziemskiej w stopce strony i wybierając żądany język.


Ten artykuł zawiera informacje dotyczące serwera Team Foundation Server 2017 Update 1. Kliknij przycisk pobierania.

Download Team Foundation Server 2017 Update 1

Szczegółowe informacje na temat serwera Team Foundation Server 2017 można znaleźć na stronie Team Foundation Server Requirements and Compatibility (Wymagania i zgodność serwera Team Foundation Server).

Aby uzyskać więcej informacji, zobacz stronę instalacji serwera TFS.


Release Notes Icon Data wydania: 7 marca 2017 r.

Podsumowanie informacji o nowościach w serwerze Team Foundation Server 2017 Update 1


Szczegółowe informacje o nowościach w serwerze Team Foundation Server 2017 Update 1

Bardziej spersonalizowane środowiska

Strona główna spersonalizowanej kolekcji

W tej wersji łatwo jest uzyskać dostęp do artefaktów, które są dla Ciebie najważniejsze. Przeprojektowana strona kolekcji (Rysunek 1) zawiera spersonalizowane środowisko, w którym wyświetlane są interesujące Cię obszary: Projekty, Ulubione, Praca i Żądania ściągnięcia. W jednym miejscu możesz szybko znaleźć wszystkie potrzebne informacje. Aby uzyskać więcej informacji, zobacz strony centrum kont.

Redesigned collection page
(Rysunek 1) Przeprojektowana strona Kolekcja

Twój projekt zyskuje tożsamość

Istnieje teraz jedno miejsce, w którym można znaleźć przegląd projektu. Na nowej stronie projektu można w łatwy sposób wyświetlić i edytować opis projektu, wyświetlić lub dodać elementy członkowskie oraz sprawdzić ostatnią aktywność. Teraz jeszcze łatwiej jest rozpocząć pracę z nowym projektem i wykorzystać wszystkie wbudowane funkcje podejścia DevOps programu TFS.

Ulepszenia kontroli wersji

Zmiany uprawnień administratora repozytorium

W przypadku repozytoriów Git uprawnienie Administrowanie zostało podzielone na kilka bardziej szczegółowych uprawnień. Zapewnia to większą elastyczność podczas określania, kto może wykonywać wybrane działania. Można np. zezwolić wszystkich osobom na koncie na tworzenie nowych repozytoriów, ale zabronić im usuwania repozytoriów lub dodawania do repozytorium nowych użytkowników. Nowe uprawnienia:

  • Zarządzaj uprawnieniami: Dodawanie/usuwanie użytkowników i uprawnień.
  • Utwórz: Tworzenie nowego repozytorium.
  • Usuń: Usuwanie repozytorium.
  • Zmień nazwę: Zmiana nazwy repozytorium.
  • Edytuj zasady: Konfigurowanie zasad gałęzi.
  • Usuń blokady innych osób: Usuwanie blokad gałęzi ustawionych przez innego użytkownika.

Uprawnienia te można zastosować do wszystkich repozytoriów w projekcie lub tylko do wybranych repozytoriów.

Ulepszenia zasad gałęzi

W sekcji Zasady (Rysunek 2) wymagane i opcjonalne zasady są teraz pogrupowane. Dzięki temu widać dokładnie, które zasady są wymagane do ukończenia żądania ściągnięcia. Wymagani recenzenci zostaną również podsumowani w wymaganej sekcji i zostaną oznaczeni jako zatwierdzeni tylko, gdy wyrażą na to zgodę wszyscy wymagani recenzenci.

Policies section
(Rysunek 2) Sekcja zasad

Nowe okno dialogowe Zakończone (Rysunek 3) umożliwia teraz obejście zasad (jeśli masz wymagane uprawnienia). Wszystkie zasady, które nie są spełnione, zostaną wyświetlone w komunikacie ostrzeżenia oraz zostanie wyświetlona nowa opcja jawnej zgody na uczestnictwo w celu przesłonięcia zasad. Zaznaczenie opcji przesłonięcia włączy akcję Przesłoń i zakończ, która umożliwia zakończenie żądania ściągnięcia dzięki przesłonięciu wszelkich niespełnionych zasad.

Complete dialog
(Rysunek 3) Okno dialogowe Zakończone

Obsługa wykluczeń plików w zasadach dotyczących wymaganych osób dokonujących przeglądu

Podczas określania wymaganych recenzentów dla określonych ścieżek pliku można teraz wykluczyć ścieżki za pomocą znaku „!” jako prefiksu ścieżki do wykluczenia. Możesz na przykład użyć tej funkcji w celu wykluczenia folderu z dokumentami ze zwykle wymaganego odbioru (Rysunek 4) .

File exclusion support
(Rysunek 4) Obsługa wykluczenia pliku

Importowanie repozytorium

Można teraz zaimportować repozytorium Git z usługi GitHub, BitBucket, GitLab i innych lokalizacji. Importowanie można przeprowadzić do nowego lub istniejącego pustego repozytorium. Aby uzyskać więcej informacji, zobacz Importowanie repozytorium Git.

Dodawanie pliku .gitignore podczas tworzenia repozytorium

Podczas tworzenia nowego repozytorium Git można teraz dodać plik gitignore i skojarzyć go z własnym repozytorium. Plik .gitignore służy do określania plików, które mają być ignorowane przez narzędzie Git podczas wykonywania zatwierdzenia.

Okno dialogowe umożliwia wybranie jednego z wielu dostępnych szablonów pliku gitignore (Rysunek 5) .

Add .gitignore during repo creation
(Rysunek 5) Dodawanie pliku gitignore podczas tworzenia repozytorium

Selekcjonowanie i wycofywanie

Dodaliśmy dwie nowe funkcje, które ułatwiają przenoszenie lub wycofywanie zmian z portalu internetowego: selekcjonowanie i wycofywanie.

Selekcjonowanie służy do przenoszenia zmian z żądania ściągnięcia do wielu gałęzi. Typowym przypadkiem użycia jest konieczność zastosowania poprawek względem usterki, która musi zostać usunięta, również w ramach linii głównej. Po utworzeniu żądania ściągnięcia zawierającego poprawkę do zastosowania w gałęzi poprawek można łatwo wyselekcjonować tę samą poprawkę do głównej gałęzi. Aby uzyskać więcej informacji, zobacz Kopiowanie zmian za pomocą selekcjonowania.

Możliwe jest wycofanie zmian z ukończonych żądań ściągnięcia. Znajdź żądanie ściągnięcia, w ramach którego wprowadzono nieprawidłową zmianę, kliknij pozycję Wycofaj, a następnie wykonaj czynności w celu utworzenia żądania ściągnięcia wycofującego niepożądane zmiany. Aby uzyskać więcej informacji, zobacz Cofanie zmian za pomocą narzędzia Git.

Możliwa do skonfigurowania gałąź porównawcza

Możliwe jest teraz ustawienie gałęzi porównawczej na gałąź inną niż domyślna. To ustawienie jest utrwalane na poziomie użytkownika. Żądania ściągnięcia i nowe gałęzie utworzone na podstawie strony Gałęzie będą oparte na gałęzi ustawionej jako gałąź porównawcza. Aby uzyskać więcej informacji, zobacz Zarządzanie gałęziami.

Wyszukiwanie pliku lub folderu

Istnieje możliwość szybkiego wyszukania pliku lub folderu w repozytorium za pomocą centrum Kod w projekcie usługi Team Services. Wynik zawiera listę elementów z bieżącego folderu oraz plików i folderów w ramach repozytorium.

W przypadku dowolnego repozytorium Git przejdź do pola kontrolki ścieżki (Rysunek 6) , a następnie rozpocznij wpisywanie, aby zainicjować środowisko wyszukiwania nawigacji dla szukanego pliku lub folderu.

Find a file or folder
(Rysunek 6) Wyszukiwanie pliku lub folderu

Potwierdzenie usuwania repozytoriów

Aby zapobiec przypadkowym usunięciom repozytoriów, konieczne jest teraz wpisanie nazwy repozytorium w celu potwierdzenia akcji usuwania.

Ulubione repozytoria

Możesz teraz oznaczać jako ulubione repozytoria, z którymi pracujesz najczęściej. W selektorze repozytorium (Rysunek 7) są wyświetlane karty Wszystkie repozytoria i Ulubione. Kliknij gwiazdkę, aby dodać repozytorium do listy Ulubione.

Repo favorites
(Rysunek 7) Ulubione repozytoria

Wyszukiwanie pliku lub folderu w historii zatwierdzeń

Podobnie jak w przypadku karty Pliki, można teraz wyszukać plik lub folder w repozytorium i wyświetlić historię zatwierdzeń dla tego pliku lub folderu. W przypadku dowolnego repozytorium Git przejdź do pola kontrolki ścieżki na karcie Historia (Rysunek 8) , a następnie zacznij pisać, aby zainicjować wyszukiwanie historii dla szukanego pliku lub folderu.

Commit history
(Rysunek 8) Historia zatwierdzeń

Ulepszenia dotyczące strony Zatwierdzanie

Środowisko strony szczegółów zatwierdzenia i strony historii zatwierdzeń jest teraz nowoczesne i bardzo wydajne. Możliwe jest teraz wyszukiwanie ważnych informacji dotyczących zatwierdzenia i wykonywanie na nich działań z widoku wysokiego poziomu.

Oto przykładowa strona szczegółów zatwierdzenia (Rysunek 9) :

Commit details
(Rysunek 9) Szczegóły zatwierdzenia

Poniżej znajduje się strona historii zatwierdzeń (Rysunek 10) :

Commit history page
(Rysunek 10) Historia zatwierdzeń

Wyszukiwanie zatwierdzeń w ramach gałęzi

Możesz teraz wyszukać zatwierdzenie w określonej gałęzi lub tagu, klikając przycisk Wyszukaj w gałęziach na stronie szczegółów zatwierdzenia (Rysunek 11) .

Commit search
(Rysunek 11) Wyszukiwanie zatwierdzeń

W oknie można wybierać tagi i gałęzie do wyświetlenia, nawet jeśli te gałęzie i tagi nie zawierają konkretnego zatwierdzenia (Rysunek 12) .

Commit search dialog
(Rysunek 12) Okno dialogowe Wyszukiwanie zatwierdzeń

Pasek powiadomień kontroli dyskusji

Język znaczników Markdown to zaawansowane narzędzie przydatne podczas dodawania komentarzy do żądań ściągnięcia, ale zapamiętanie jego składni może być trudne. Aby to ułatwić, dodaliśmy pasek narzędzi do kontrolki dyskusji (Rysunek 13) . Pozwala to wstawić odpowiednią składnię języka znaczników Markdown w celu dodania typowego formatowania. Przy użyciu nowych kontrolek paska powiadomień można dodawać nagłówki, pogrubienie, kursywę, linki, kod i listy, a także funkcje takie jak wzmianki @ i #. Dostępne są skróty klawiaturowe pogrubienia (CTRL+B), kursywy (CTRL+I) i tworzenia linków (CTRL+K).

Discussion toolbar
(Rysunek 13) Pasek narzędzi Dyskusja

Ulepszenie komentarzy do żądań ściągnięcia

Aby ułatwić identyfikowanie nowych komentarzy w żądaniach ściągnięcia, dodaliśmy dodatkowe dekoracje do nowych odpowiedzi w istniejących wątkach dyskusji. Komentarze w widoku plików będą również wyróżniać wątki, które zawierają nowe komentarze (Rysunek 14) .

PR comment
(Rysunek 14) Ulepszenie komentarzy do żądań ściągnięcia

Wyświetlanie żądań ściągnięcia do zatwierdzenia

Na stronie Szczegóły zatwierdzenia można teraz wyświetlać wszystkie żądania ściągnięcia skojarzone z zatwierdzeniem. Jak widać na poniższej ilustracji (Rysunek 15) :

  • Na liście rozwijanej żądań ściągnięcia znajdują się dwa żądania skojarzone z tym zatwierdzeniem.
  • Żądanie ściągnięcia nr 2 przeniosło to zatwierdzenie do wzorca.
  • To samo zatwierdzenie zostało przeniesione do gałęzi 4 za pomocą żądania ściągnięcia nr 1.
PR in commits
(Rysunek 15) Żądania ściągnięcia w zatwierdzeniach

Śledzenie żądania ściągnięcia

Teraz jest możliwe śledzenie żądania ściągnięcia, co pozwala na otrzymywanie powiadomień o zmianach za pomocą alertów e-mail. Opcja Śledź jest dostępna w menu kontekstowym (Rysunek 16) .

Follow a pull request
(Rysunek 16) Śledzenie żądania ściągnięcia

Ponowne uruchamianie scalania żądania ściągnięcia

Dodano inną opcję służącą do ponawiania próby przeprowadzenia scalenia dla żądania ściągnięcia, w ramach którego gałąź docelowa została zaktualizowana. Opcja Ponownie uruchom żądanie ściągnięcia jest przydatna, gdy chcesz zweryfikować, czy najnowsze zmiany w gałęzi docelowej nie spowodowały konfliktów ani nie przerwały kompilacji żądania ściągnięcia.

Zablokowane uzupełnianie w przypadku odrzuconych żądań ściągnięcia

Dla gałęzi z ustawionymi zasadami przeglądu kodu będzie wyświetlane powiadomienie o braku możliwości ukończenia żądania ściągnięcia w przypadku, gdy zostanie ono odrzucone przez co najmniej jednego recenzenta. Wielu użytkowników oczekiwało takiego zachowania, więc zachowanie domyślne zostało zmienione. Zespoły, które chcą zachować oryginalne zachowanie, mogą korzystać z nowej opcji na stronie ustawień zasad gałęzi (Rysunek 17) .

Code review policy
(Rysunek 17) Zasady przeglądu kodu

Znaczniki markdown w opisie żądania ściągnięcia

Popraw wygląd żądania ściągnięcia za pomocą znaczników markdown. Obsługa znaczników markdown, którą można było z powodzeniem zastosować w komentarzach żądań ściągnięcia, jest teraz dostępna w przypadku ich opisów.

Załączniki w dyskusjach dotyczących żądań ściągnięcia

Można teraz dodawać załączniki do komentarzy dotyczących żądań ściągnięcia (Rysunek 18) . Załączniki można dodawać przez przeciąganie i upuszczanie lub za pomocą przeglądania. W przypadku obrazów załączniki można dodawać, wklejając je po prostu ze schowka. Dodanie załącznika spowoduje automatyczne zaktualizowanie komentarza w taki sposób, aby dołączyć odwołanie do znacznika markdown w nowym załączniku.

Attachments in PR discussions
(Rysunek 18) Załączniki w dyskusjach dotyczących żądań ściągnięcia

Wyróżnianie żądań ściągnięcia zawierających aktualizacje

Teraz lepiej niż kiedykolwiek są widoczne aktualizacje żądań ściągnięcia. W widoku listy żądań ściągnięcia (Rysunek 19) dla żądań ściągnięcia z wprowadzonymi zmianami od momentu ostatniego wyświetlenia jest widoczna nowa kolumna aktualizacji zawierająca podsumowanie zmian.

PR updated files
(Rysunek 19) Zaktualizowane pliki żądania ściągnięcia

Po wyświetleniu żądania ściągnięcia zawierającego zmiany w obszarze przeglądu będzie widoczny podobny komunikat z podsumowaniem. Nowe wypchnięcia i wątki komentarzy będą wyróżnione na niebiesko (Rysunek 20) . Kliknięcie linku Wyświetl aktualizacje kodu spowoduje przejście do widoku Pliki, w którym będzie wyświetlony widok różnic wynikających ze zmian wprowadzonych od czasu ostatniego wyświetlenia żądania ściągnięcia. Ta funkcja ułatwia śledzenie żądania ściągnięcia, w którym autor wprowadził zmiany w odpowiedzi na opinie.

PR summary
(Rysunek 20) Podsumowanie żądania ściągnięcia

Zasady gałęzi dotyczące strategii scalania żądań ściągnięcia

Dodaliśmy nowe zasady gałęzi (Rysunek 21) , które umożliwiają definiowanie strategii scalania żądań ściągnięcia dla każdej gałęzi. Wcześniej decyzja o tym, czy ma być wykonywane scalanie czy kompresowanie, była podejmowana przez użytkownika po ukończeniu żądania ściągnięcia. Jeśli te zasady zostaną włączone, zastąpią one preferencje użytkownika, co wymusi użycie wymagania ustawionego na podstawie zasad.

Branch policy
(Rysunek 21) Zasady gałęzi

Udostępnianie informacji dotyczących konfliktów scalania

Jeśli w żądaniu ściągnięcia istnieją pliki z konfliktami, szczegółowe informacje o tych konfliktach są teraz widoczne w ramach przeglądu (Rysunek 22) . Dla każdego pliku powodującego konflikt jest wyświetlane krótkie podsumowanie typu konfliktu między gałęziami źródłową i docelową.

Merge conflicts
(Rysunek 22) Konflikty scalania

Przycisk podglądu znaczników markdown

Podczas przeglądania widoku różnic pliku znaczników markdown w ramach zatwierdzenia, wypchnięcia lub żądania ściągnięcia możliwe jest teraz łatwe przełączenie w celu wyświetlenia wynikowego widoku renderowanego.

Ulepszenia śledzenia elementów roboczych

Udoskonalone środowisko wyszukiwania dla pól tożsamości z zakresami

W tej wersji zmodyfikowaliśmy zachowanie selektora tożsamości dotyczące pól tożsamości z zakresami, czyli pól tożsamości skonfigurowanych tak, aby zezwalać tylko na przypisywanie do określonej grupy użytkowników. Po tej aktualizacji na liście ostatnio używanych elementów i w wynikach wyszukiwania znajdą się tylko członkowie skonfigurowanej grupy, a nie wyniki dotyczące wszystkich ważnych użytkowników dla danej kolekcji.

Ulepszenia kompilacji

Wycofywanie definicji kompilacji

Możesz przywrócić poprzednią wersję definicji kompilacji. W tym celu przejdź na kartę Historia podczas edytowania definicji kompilacji.

Wyłączanie synchronizacji i wyewidencjonowywania źródeł w kompilacji

Opcjonalnie można wyłączyć automatyczne przeprowadzanie synchronizacji źródeł i wyewidencjonowywania dla narzędzia Git. Pozwoli to na obsługę operacji źródłowych za pomocą zadania lub skryptu zamiast korzystania z wbudowanego zachowania agenta. Ustawione są wszystkie standardowe zmienne dotyczące źródeł, takie jak Source.Version, Source.Branch i Build.SourcesDirectory.

Pobieżne klonowanie narzędzia Git i rozszerzenie Git LFS

Agent kompilacji obsługuje teraz pobieżne klonowanie narzędzia Git i rozszerzenie Git LFS. Aby uzyskać więcej informacji, zobacz stronę repozytorium definicji kompilacji.

Wersjonowanie zadań na potrzeby definicji kompilowania i wydawania

Udostępniliśmy możliwość kontrolowania wersji głównej zadania uruchamianego w ramach kompilacji lub wersji. Zmiana ta powoduje zmniejszenie liczby nieprzewidywalnych błędów, które są spowodowane przez automatyczne aktualizacje agenta i wersji zadania. Obecnie wersja główna zadania jest określana na karcie Kompilacja definicji lub na karcie Środowiska definicji wersji.

Po wydaniu wersji pomocniczej (na przykład 1.2 lub 1.3) zmiana zostanie automatycznie wprowadzona do kompilacji. Natomiast jeśli zostanie wydana wersja główna, na przykład 2.0, to kompilacja pozostanie zablokowana w wersji 1.3, dopóki nie będzie miała miejsca edycja definicji i ręczna zmiana na nową wersję główną. Flaga w definicji kompilacji ostrzega o nowych wersjach głównych.

Zarządzanie pakietami jest płatne

Aby nadal korzystać z usługi Zarządzanie pakietami, musisz mieć subskrypcję programu Visual Studio Enterprise lub licencję usługi Zarządzanie pakietami kupioną w witrynie Marketplace. Możesz znaleźć więcej informacji na temat licencjonowania usługi Zarządzanie pakietami.

Ulepszenia dotyczące pakietów

Widoki wersji w usłudze zarządzanie pakietami

Dodaliśmy nową funkcję do rozszerzenia Zarządzanie pakietami o nazwie widoki wydania (Rysunek 23) . Widoki wersji stanowią podzbiór wersji pakietu w źródle danych, które zostały podniesione do tego widoku wersji. Utworzenie widoku wersji i udostępnienie go konsumentom pakietu pozwala na sterowanie wersjami pakietów, od których będą oni zależni. Jest to szczególnie przydatne w scenariuszach ciągłej integracji, gdzie ma miejsce częste publikowanie zaktualizowanych wersji pakietów, ale nie ma potrzeby ogłaszania każdej opublikowanej wersji ani jej obsługiwania.

Wyszukaj szybkie wprowadzenie do usługi Web Access lub dowiedz się więcej o widokach wersji pakietu CI/CD, aby rozpocząć pracę.

Release views in Package Management
(Rysunek 23) Widoki wersji

Pakiety npm w usłudze zarządzania pakietami

Źródła danych usługi zarządzania pakietami obsługują teraz pakiety npm na potrzeby programowania w języku Node.js i JavaScript. Ponadto źródła danych pakietów npm obsługują witrynę npmjs.com jako „nadrzędne źródło z buforowaniem”. Po włączeniu tej opcji źródło danych będzie w przezroczysty sposób pośredniczyć w udostępnianiu pakietów z witryny npmjs.com i buforować je (zobacz Używanie pakietów z witryny npmjs.com), co oznacza, że pobranie określonego elementu package@version z witryny npmjs.com będzie konieczne tylko raz, a przyszłe żądania dotyczące tego pakietu będą udostępnianie bezpośrednio z serwera TFS. Jeśli pakiet zostanie usunięty z witryny npmjs.com, nadal będzie można uzyskać jego zbuforowaną wersję z serwera TFS.

Aby rozpocząć, poszukaj nowej opcji npm w oknie dialogowym Połączenie ze źródłem danych (Rysunek 24) .

npm in Package Management
(Rysunek 24) Pakiety npm w usłudze zarządzania pakietami

Ulepszenia międzyplatformowe

Formatowanie xcpretty zadania polecenia xcodebuild

Teraz dane wyjściowe polecenia xcodebuild można sformatować za pomocą modułu xcpretty (Rysunek 25) . Za pomocą polecania xcodebuild można również opublikować wyników testów JUnit w usłudze Team Services. Wcześniej konieczne było użycie narzędzia xctool jako narzędzia kompilacji w celu opublikowania wyniki testów. Aby teraz włączyć moduł xcpretty, zaznacz pole wyboru Use xcpretty (Użyj modułu xcpretty) i usuń zaznaczenie pola wyboru Use xctool (Użyj narzędzia xctool) w sekcji Advanced (Zaawansowane) zadania Xcode.

Xcode Build formatting
(Rysunek 25) Formatowanie xcpretty

Publikowanie wyników testowania i pokrycia kodu rozwiązania Jenkins

Za pomocą zadania kompilowania i wydawania Jenkins Queue Job można teraz pobierać wyniki testowania i pokrycia kodu z zadania Jenkins lub potoku. Wymaga to zainstalowania wtyczki TFS Plugin for Jenkins 5.2.0 lub nowszej na serwerze rozwiązania Jenkins i skonfigurowania akcji po kompilacji zbierania wyników dla programu TFS lub usługi Team Services. Po pobraniu wyników z serwera Jenkins są one publikowane za pomocą zadań kompilacji Publikuj wyniki testu lub Publikuj pokrycie kodu.

Podpisywanie i eksportowanie pakietów programu Xcode 8 w ramach zadania kompilacji programu Xcode

Zadanie programu Xcode obsługuje teraz kompilowanie projektów za pomocą automatycznego podpisywania programu Xcode 8 (Rysunek 26) . Możliwe jest ręczne zainstalowanie certyfikatów i profilów aprowizacji na serwerze kompilacji lub zainstalowanie ich za pomocą zadania, określając opcje zawartości pliku.

Xcode automatic signing
(Rysunek26) Automatyczne podpisywanie programu Xcode

Program Xcode 8 wymaga określenia pliku plist opcji eksportowania (Rysunek 27) podczas eksportowania pakietu aplikacji (IPA) z archiwum (xcarchive). Zadanie Xcode teraz automatycznie rozpoznaje metodę eksportowania w przypadku używania programu Xcode 7 lub Xcode 8. Istnieje możliwość określenia metody eksportowania lub określenia niestandardowego pliku plist z poziomu zadania programu Xcode. Jeśli używasz programu Xcode w wersji starszej niż 7, zadanie zostanie wycofane do używania starego narzędzia (xcrun) w celu utworzenia pakietu aplikacji.

Xcode export options
(Rysunek 27) Opcje eksportowania programu Xcode

Ulepszenia testowania

Uruchamianie testów utworzonych przy użyciu programu Visual Studio 2017

Za pomocą zadań Wdróż agenta testowego i Uruchom testy funkcjonalne w potoku ciągłej integracji/ciągłego wdrażania (Rysunek 28) można teraz zainstalować agentów testowych programu Visual Studio 2017 i uruchamiać testy, które zostały utworzone w programie Visual Studio 2017.

Run tests
(Rysunek 28) Uruchamianie testów

Sprawdzanie usterek z poziomu elementu roboczego

Teraz możesz zweryfikować usterkę, uruchamiając ponownie testy, w wyniku których została zidentyfikowana (Rysunek 29) . Możesz wywołać opcję Weryfikuj z poziomu menu kontekstowego formularza elementu roboczego usterki, aby uruchomić odpowiedni przypadek testowy w module uruchamiającym testy w sieci Web. Przeprowadź weryfikację przy użyciu internetowego modułu uruchamiającego testy i zaktualizuj element roboczy usterki bezpośrednio w tym module.

Verify bugs from work item
(Rysunek 29) Sprawdzanie usterek z poziomu elementu roboczego

Klasy pomocnicze klienta REST na potrzeby operacji związanych z krokami testu

Teraz możesz tworzyć, modyfikować oraz usuwać kroki testu i ich załączniki w elementach roboczych przypadków testowych za pomocą klas pomocniczych dodanych do klienta REST (zobacz Przykładowy interfejs API REST).

Aktualizowanie istniejących usterek z poziomu modułu uruchamiającego testy w sieci Web

Z poziomu internetowego modułu uruchamiającego testy można nie tylko tworzyć nowe usterki, ale też aktualizować istniejące (Rysunek 30) . Wszystkie zebrane dane diagnostyczne, kroki odtwarzania i linki umożliwiające śledzenie z bieżącej sesji są automatycznie dodawane do istniejącej usterki.

Test runner
(Rysunek 30) Aktualizowanie istniejącej usterki

Opis przypadków testowych w module uruchamiającym testy w sieci Web

Pole opisu przypadku testowego było często używane do przechwytywania wymagań wstępnych, które muszą zostać spełnione przed rozpoczęciem wykonywania przypadku testowego. Dzięki tej aktualizacji możesz wyświetlać informacje dotyczące opisu przypadku testowego w internetowym module uruchamiającym testy za pomocą opcji Pokaż opis (Rysunek 31) .

Test case description
(Rysunek 31) Opis przypadku testowego

Punkt udziału narzędzia Test Hub

Dodaliśmy nowy punkt udziału („ms.vss-test-web.test-plan-pivot-tabs”) (Rysunek 32) w ramach centrum Plan testów, aby umożliwić programistom pisanie rozszerzeń jako karty przestawnej wyświetlanej obok karty Testy i Wykresy.

Contribution point
(Rysunek 32) Punkt udziału

Usuwanie artefaktów testowych

We wcześniejszych wersjach można było usuwać tylko elementy robocze. Dzięki tej aktualizacji można teraz trwale usuwać artefakty testów — plany testów, zestawy testów, przypadki testowe, parametry udostępnione i wspólne kroki — zarówno z poziomu centrum Testowanie, jak i centrum Praca za pomocą opcji Trwale usuń (Rysunek 33) z menu kontekstowego formularza elementu roboczego.

Delete test artifacts
(Rysunek 33) Usuwanie artefaktów testowych

Lista Ulubione dla planów testów

Możesz teraz oznaczać jako ulubione plany testów, z którymi pracujesz najczęściej. W selektorze Plany testów są wyświetlane karty Wszystkie i Ulubione (Rysunek 34) . Kliknij ikonę gwiazdki, aby dodać plan testów do listy Ulubione. Ulubione plany testów są dostępne z poziomu selektora Plany testów i karty Ulubione na nowej stronie głównej konta. Plany testów można również filtrować, wykonując wyszukiwanie w polu tytułu (Rysunek 35) .

Test plans
(Rysunek 34) Plany testów
Test favorites
(Rysunek 35) Ulubione testy

Analiza wpływu testu dla zarządzanych testów automatycznych

Analiza wpływu testu dla zarządzanych testów automatycznych jest teraz dostępna za pośrednictwem pola wyboru w wersji zapoznawczej 2.* zadania VSTest (Rysunek 36) .

Test impact analysis
(Rysunek 36) Analiza wpływu testu

Jeśli zostanie włączona, zostanie uruchomiony tylko odpowiedni zestaw zarządzanych testów automatycznych, który należy uruchomić w celu zweryfikowania danej zmiany kodu. Analiza wpływu testu wymaga najnowszej wersji programu Visual Studio i obecnie jest obsługiwana w ramach integracji ciągłej na potrzeby zarządzanych testów automatycznych.

Obsługa przez program Firefox rozszerzenia Test & Feedback

Mamy przyjemność ogłosić ogólną dostępność rozszerzenia o udostępnieniu rozszerzenia Test & Feedback dla programu Firefox. Dodatek programu Firefox można pobrać z witryny Marketplace.

Uwaga: Obsługa dla przeglądarki Microsoft Edge jest w przygotowaniu — wkrótce podamy więcej informacji na ten temat.

Ulepszenia usługi Release Management

Obsługa grup zmiennych w wersji

Grupy zmiennych służą do grupowania zmiennych oraz ich wartości w celu ich udostępnienia w wielu definicjach wersji. Można również zarządzać zabezpieczeniami grup zmiennych i wybrać, kto może wyświetlać i edytować zmienne oraz ich używać z poziomu grup zmiennych w definicjach wersji.

Otwórz kartę Biblioteka w centrum Kompilacja i wersja i wybierz pozycję + Grupa zmiennych na pasku narzędzi (Rysunek 37) . Obecnie grupy zmiennych są używane tylko w definicjach wersji. Aby uzyskać więcej informacji na temat grup zmiennych, zobacz Definicje wersji w usłudze Microsoft Release Management.

Utwórz grupę zmiennych (Rysunek 37) , a następnie ją zmodyfikuj (Rysunek 38) , jak pokazano poniżej:

Create variable group
(Rysunek 37) Tworzenie grupy zmiennych
Edit variable group
(Rysunek 38) Edytowanie grupy zmiennych

Wiele harmonogramów w ramach wersji

Chcesz zaplanować tworzenie wersji częściej niż jeden raz w ciągu dnia? Teraz można skonfigurować wiele zaplanowanych wyzwalaczy w definicji wersji (Rysunek 39) .

Release schedule
(Rysunek 39) Planowanie wydania

Wbudowane połączenia usług w ramach kompilowania i wydawania

Za pomocą tej funkcji można tworzyć połączenia usługi bezpośrednio w definicji kompilowania/wydawania bez przechodzenia na kartę Usługi. Ta funkcja jest automatycznie włączona dla wszystkich rozszerzeń zdefiniowanych w sposób deklaratywny, takich jak Docker, Jenkins, VMWare i SCVMM.

Do tej pory definicje wersji mogły łączyć tylko źródła artefaktów z bieżącego projektu. Teraz możliwe jest łączenie artefaktów kompilacji (Rysunek 40) także z innego projektu. Podczas łączenia artefaktu na liście rozwijanej projektu będą znajdowały się wszystkie projekty w ramach konta.

Link build artifacts
(Rysunek 40) Łączenie artefaktów kompilacji

Ulepszenia grupy zasobów platformy Azure

We wcześniejszych wersjach zadanie grupy zasobów platformy Azure nie mogło przeprowadzić weryfikacji składni szablonu ARM lub składnia była akceptowana bez faktycznego wdrażania zasobów. To usprawnienie umożliwia korzystanie z nowego trybu wdrożenia o nazwie Tylko weryfikacja, który pozwala znaleźć problemy z tworzeniem szablonu przed utworzeniem rzeczywistych zasobów platformy Azure.

Innym usprawnieniem zadania grupy zasobów platformy Azure jest umożliwienie wdrożeń przyrostowych i całkowitych (Rysunek 41) . Wcześniej szablony ARM były wdrażane w ramach zadania przy użyciu trybu przyrostowego. Jednak zasoby, które istniały w grupie zasobów, ale nie zostały określone w szablonie, nie były modyfikowane. W trybie całkowitym zasoby, które nie zostały określone w szablonie, są usuwane. Domyślnie jest używany tryb przyrostowy.

Azure resource groups
(Rysunek 41) Grupy zasobów platformy Azure

Zadanie interfejsu wiersza polecenia platformy Azure

Nowe zadanie interfejsu wiersza polecenia platformy Azure (Rysunek 42) obsługuje uruchamianie poleceń interfejsu wiersza polecenia platformy Azure dla agentów wieloplatformowych, takich jak systemy Windows, Linux i Mac. Zadanie obsługuje zarówno subskrypcje klasyczne, jak i subskrypcje usługi ARM. Obsługuje również dwa tryby udostępniania skryptu — jeden jako połączony artefakt, a drugi jako wbudowany skrypt.

Azure CLI task
(Rysunek 42) Zadanie interfejsu wiersza polecenia platformy Azure

Aktualizacja wyszukiwania kodu

W programie TFS 2017 Update 1 usługa wyszukiwania kodu obejmuje usługę Elasticsearch w wersji 2.4.1. Jeśli usługa wyszukiwania kodu jest skonfigurowana na serwerze TFS 2017, zostanie ona zaktualizowana w ramach uaktualnienia serwera TFS. Jeśli usługa wyszukiwania kodu jest skonfigurowana na serwerze zdalnym, należy skopiować zawartość pakietu usługi wyszukiwania dostarczonego z instalatorem na komputer zdalny i postępować zgodnie z instrukcjami znajdującymi się w pliku readme w celu ręcznego uaktualnienia usługi wyszukiwania.

Ulepszenia szczegółowych informacji dotyczących kodu

Zadania programu SonarQube MSBuild

Zadania programu SonarQube MSBuild są teraz dostępne z poziomu rozszerzenia dostarczonego przez firmę SonarSource. Aby uzyskać więcej informacji, zapoznaj się z artykułem SonarSource have announced their own SonarQube Team Services / TFS integration (Firma SonarSource ogłosiła integrację własnych usług SonarQube Team Services z programem TFS).

Ulepszenia administracji

Nowe środowisko ustawień powiadomień

Powiadomienia ułatwiają użytkownikom i ich zespołom dostęp do aktualnych informacji dotyczących aktywności w projektach usługi Team Services. Dzięki tej aktualizacji łatwiejsze jest zarządzanie tym, jakie powiadomienia mają być odbierane przez Ciebie i Twoje zespoły.

Ustawieniami powiadomień można teraz zarządzać na własnym koncie w menu profilu (Rysunek 43) .

Notification settings
(Rysunek 43) Ustawienia powiadomień

Widok ten umożliwia zarządzanie utworzonymi przez siebie subskrypcjami osobistymi (Rysunek 44) . Znajdują się w nim również subskrypcje utworzone przez administratorów zespołów dla wszystkich projektów w ramach konta.

Manage personal subscriptions
(Rysunek 44) Zarządzanie subskrypcjami osobistymi

Dowiedz się więcej o zarządzaniu ustawieniami powiadomień osobistych.

Polecenie addProjectReports jest teraz dostępne w narzędziu TfsConfig

Można teraz dodawać raporty do projektów zespołowych, korzystając z polecenia addProjectReports. Wcześniej polecenie to było dostępne z poziomu narzędzia Power Tool, a teraz stanowi część programu TfsConfig.exe. Aby uzyskać więcej informacji, zobacz Przekazywanie raportów do projektu zespołowego.

Wycofanie funkcji pokoju zespołu

Wiedząc, że istnieje wiele dobrych rozwiązań zapewniających bezproblemową integrację z programem TFS i usługą Team Services, takich jak usługi Slack i Microsoft Teams, podjęliśmy decyzję o wycofaniu funkcji pokoju zespołu zarówno z programu TFS, jak i usługi Team Services. Podczas pracy w usłudze Team Services zostanie wyświetlony nowy żółty transparent z informacją o tym fakcie. W dalszej części tego roku planujemy całkowicie wyłączyć funkcję pokoju zespołu.

Istnieje kilka rozwiązań alternatywnych, których można użyć. Funkcja pokoju zespołu jest używana zarówno na potrzeby centrum powiadomień, jak również w celu prowadzenia rozmowy. Program TFS i usługi Team Services są już zintegrowane z wieloma innymi produktami do współpracy, w tym Microsoft Teams, Slack, HipChati Flowdock. Można również użyć narzędzia Zapier do tworzenia własnych integracji lub uzyskać bardzo szczegółową kontrolę nad wyświetlanymi powiadomieniami.

Zobacz więcej informacji o wycofaniu pokojów zespołów w usługach Team Services.

Wraz z aktualizacją Update 1 strony powitalne, widżet znaczników markdown na pulpitach nawigacyjnych zespołu i definicja ukończenia na tablicach Kanban nie obsługują już linków do plików w ramach swoich znaczników markdown. Aby obejść ten problem, można użyć linku do pliku jako tekstu w znacznikach markdown. Aby uzyskać więcej informacji, zobacz Wskazówki dotyczące znaczników markdown.

Wprowadzenie Edytora szablonów procesu

Udostępniliśmy rozszerzenie Edytor szablonów procesu dla programu Visual Studio 2017. Umożliwia ono wygodne wyświetlanie i aktualizowanie szablonów procesów, a także zawiera narzędzia do aktualizacji list globalnych i typów elementów roboczych oraz wyświetlania atrybutów pól elementów roboczych. Rozszerzenie współpracuje z serwerami z oprogramowaniem TFS 2017 i TFS 2017 Update 1.


Znane problemy

Kompilacja nie działa w przypadku uaktualnienia do programu TFS 2017 Update 1 (kompilacja 15.112.26301.0) z programu TFS 2013 lub wcześniejszej wersji

  • Problem:

    Należy pamiętać, że ten problem występuje tylko w przypadku uaktualnienia do programu TFS 2017 Update 1 (kompilacja 15.112.26301.0) wydanego w dniu 7 marca 2017 r. W przypadku uaktualnienia do kompilacji 15.112.26307.0 wydanej w dniu 9 marca problem nie będzie występować.

    Po uaktualnieniu programu w wersji TFS 2013 (RTM lub inna aktualizacja) lub wcześniejszej kompilacja pokazuje błąd „Licznik o nazwie TaskReferenceId nie istnieje”.

  • Obejście problemu:

    Na uaktualnionych bazach danych kolekcji należy uruchomić następujący skrypt:

    INSERT  tbl_Counter (PartitionId, DataspaceId, CounterName, CounterValue)
    SELECT  DISTINCT
              dpm.PartitionId,
              ds.DataspaceId,
              N'TaskReferenceId',
              1
      FROM    tbl_DatabasePartitionMap dpm
      INNER LOOP JOIN Task.tbl_Hub h
      ON      h.PartitionId = dpm.PartitionId
      INNER LOOP JOIN tbl_Dataspace ds
      ON      ds.PartitionId = dpm.PartitionId
              AND ds.DataspaceCategory = h.DataspaceCategory
              AND ds.DataspaceIdentifier <> '00000000-0000-0000-0000-000000000000'
      WHERE   dpm.PartitionId > 0
              AND dpm.HostType = 4
              AND NOT EXISTS (
                  SELECT  *
                  FROM    tbl_Counter c
                  WHERE   c.PartitionId = dpm.PartitionId
                          AND c.DataspaceId = ds.DataspaceId
                          AND c.CounterName = N'TaskReferenceId'
              ) 
    

Klienci powinni zaktualizować Git LFS do wersji 1.3.1 lub nowszej

  • Problem:

    Wersje rozszerzenia Git LFS wcześniejsze niż 1.3.1 nie są już obsługiwane.

  • Obejście problemu:

    Użytkownicy korzystający z rozszerzenia Git LFS powinni je zaktualizować do wersji 1.3.1 lub nowszej. Starsze wersje klienta LFS nie są zgodne ze zmianami uwierzytelniania w tej wersji programu TFS.

Formularze elementów roboczych nie są poprawnie renderowane

  • Problem:

    Jeśli używasz starszej kontrolki niestandardowej w ramach formularzy elementów roboczych, takiej jak starsza kontrolka o wielu wartościach, renderowanie formularzy elementów roboczych może zakończyć się niepowodzeniem.

  • Obejście problemu:

    Konieczne jest zaktualizowanie kontrolki do najnowszej wersji. Najnowszą wersję kontrolki o wielu wartościach dla programu TFS 2017 Update 1 można znaleźć tutaj.

Formularze elementów roboczych nie są poprawnie renderowane w sieci Web

  • Problem:

    Jeśli kontrolka niestandardowa, taka jak kontrolka o wielu wartościach, jest zainstalowana dla klienta programu Visual Studio, ale nie dla klienta sieci Web, formularze elementów roboczych nie będą renderowane w sieci Web.

  • Obejście problemu:

    Możesz dodać układ internetowy, który nie zawiera brakującego elementu kontrolki. Możesz używać innego układu dla programu Visual Studio i dla sieci Web. Aby uzyskać więcej informacji na temat układu, zobacz All FORM XML elements reference (TFS 2015) (Informacje dotyczące wszystkich elementów XML FORM — serwer TFS 2015).

Pola tylko do odczytu nie są ukrywane w formularzach elementów roboczych

  • Problem:

    Jeśli używasz w układzie starego formularza elementu roboczego z właściwością HideReadonlyEmptyFields o wartości true, pola tylko do odczytu i puste pola nie będą ukrywane w formularzu.

  • Obejście problemu:

    Obecnie nie istnieje obejście tego problemu. Ten problem zostanie rozwiązany w wersji TFS 2017 Update 2.

Formularze elementów roboczych stają się zanieczyszczone podczas wyświetlania

  • Problem:

    Ten problem jest specyficzny dla programu Internet Explorer 11 na serwerze TFS 2017 Update 1 w przypadku zgadzania się na uczestnictwo w nowym formularzu elementu roboczego. Jeśli masz swój profil ustawiony na język francuski, koreański, rosyjski, turecki, japoński lub chiński, a element roboczy zostanie przypisany do dowolnej tożsamości, podczas wyświetlania elementu roboczego zobaczysz zanieczyszczony formularz elementu roboczego. Jeśli zapiszesz element roboczy, pole Przypisane do zostanie ustawione na wartość Nie przypisano.

  • Obejście problemu:

    Użyj przeglądarki innej niż Internet Explorer 11. Jeśli używasz programu Internet Explorer 11, kliknij przycisk Cofnij/Odśwież na pasku narzędzi elementu roboczego, aby przywrócić prawidłową wartość pola Przypisane do.

Niepowodzenie buforowania wychodzących pakietów NPM

  • Problem:

    Jeśli dany serwer programu TFS znajduje się za serwerem proxy, buforowanie wychodzących pakietów NPM zakończy się niepowodzeniem.

  • Obejście problemu:

    Jeśli dany serwer TFS znajduje się za firmowym serwerem proxy, wprowadź w pliku web.config (tj. %ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config) serwera programu TFS poniższe zmiany.

    Zamień ten blok konfiguracji:

      <!-- ASP.NET Proxy Usage for HttpWebRequests 
            "usesystemdefault" 
               false - stops the server using the default proxy configuration or proxy
                     auto-detection. 
            "bypassonlocal"
               true - this tells all requests to a local address to ignore configured proxies.
        -->
      <defaultProxy>
        <proxy usesystemdefault="False" bypassonlocal="True" />
      </defaultProxy>
    

    Na ten:

      <defaultProxy useDefaultCredentials="true" />
    

Menu rozwijane Kod zawiera niepoprawne strony kontroli wersji

  • Problem:

    Po przejściu na stronę administratora w repozytorium Git (jak pokazano na ilustracji poniżej) (Rysunek 45) i kliknięciu centrum Kod zobaczysz linki Grupy zmian i Zmiany odłożone na półkę zamiast linku Historia.

    Code dropdown menu
    (Rysunek 45) Menu rozwijane Kod
  • Obejście problemu:

    Wyjdź ze strony administratora repozytorium Git, a zostaną wyświetlone poprawne linki.

Rozszerzenia nie są automatycznie aktualizowane

  • Problem:

    W przypadku uaktualnienia poprzedniej wersji programu TFS do TFS 2017 oraz uruchomienia programu TFS 2017 w trybie połączonym rozszerzenia nie będą automatycznie aktualizowane zgodnie z zamierzeniami.

  • Obejście problemu:

    Obecnie nie istnieje obejście tego problemu. Problem został rozwiązany. Funkcja automatycznych aktualizacji będzie dostępna w programie TFS 2017 Update 2. Jeśli z jakiegoś powodu nie możesz czekać na wersję Update 2, skontaktuj się z nami na kanale pomocy technicznej, a my udostępnimy poprawkę wcześniej.

Nie można pobrać rozszerzeń lub nie będą one działać prawidłowo, jeśli publiczny adres URL nie jest poprawnie ustawiony

  • Problem:

    Pobieranie rozszerzenia z usługi Visual Studio Marketplace kończy się niepowodzeniem.

    Rozszerzenia, które zostały już pobrane, często nie działają zgodnie z oczekiwaniami.

  • Obejście problemu:

    Problem ten został rozwiązany w wersji TFS 2017 Update 2, dlatego zalecamy przeprowadzenie uaktualnienia. Jeśli musisz korzystać z wersji Update 1, ustaw opcję „Publiczny adres URL” w konsoli administratora serwera TFS, tak aby adres URL był osiągalny z innego systemu w środowisku firmowym (Rysunek 46) .

Code menu
(Rysunek 46) Menu Kod

Zobacz zgłoszone przez klientów problemy dotyczące serwera Team Foundation Server 2017.

The Developer Community Portal


Opinie i sugestie

Chcemy poznać Twoją opinię! Możesz zgłosić problem i śledzić go w portalu Developer Community oraz uzyskać porady w witrynie Stack Overflow.


Początek strony