Udostępnij za pośrednictwem


Shelve — polecenie (Team Foundation Version Control)

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Visual Studio 2019 | Program Visual Studio 2022

Team Foundation Version Control (TFVC) polecenie shelve przechowuje zestaw oczekujących zmian, wraz z oczekującymi notatkami zaewidencjonowania, komentarzem i listą skojarzonych elementów roboczych na serwerze Usługi Azure DevOps bez faktycznego zaewidencjonowania.

Warunki wstępne

Jeśli chcesz użyć polecenia shelve, aby usunąć zestaw na półce, być właścicielem zestawu na półce lub Administrowanie odłożone zmiany, uprawnienia muszą być ustawione na Zezwalaj na. Aby uzyskać więcej informacji, zobacz Domyślne uprawnienia serwera TFVC.

Składnia

tf shelve  [/replace] [/comment:("comment"|@commentfile)] [shelvesetname] [/validate][/noprompt] [/login:username,[password]]
tf shelve [/move] [/replace] [/comment:("comment"|@commentfile)] 
[/recursive] [shelvesetname] itemspec [/validate] [/noprompt] [/login:username,[password]]
tf shelve /delete shelvesetname[;owner] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]

Parametry

Argumenty

argumentów opis
<commentfile> Określa ścieżkę systemu plików pliku, z którego powinny być odczytywane komentarze dla zestawu półek.
<comment> Określa komentarz dla zestawu na półce.
<itemspec> Identyfikuje pliki lub foldery, które mają być odłożone. Domyślnie wszystkie oczekujące zmiany w bieżącym obszarze roboczym są odłożone, jeśli ten parametr nie jest określony. Aby uzyskać więcej informacji na temat analizowania itemspec przez program Team Foundation w celu określenia, które elementy znajdują się w zakresie, zobacz Use options to modify how a command functions.
<shelvesetname> Określa nazwę, za pomocą której zestaw półek można pobrać z serwera Usługi Azure DevOps. Można określić istniejącą kombinację shelvesetname i owner, ale tylko wtedy, gdy określono również /replace.

Musisz podać wartość dla tego parametru.
<owner> Identyfikuje bieżącego lub zamierzonego właściciela zestawu na półce według nazwy użytkownika. Domyślnie bieżący użytkownik ma przypisaną własność zestawu na półce, jeśli nie zostanie określony.
<username> Udostępnia wartość opcji /login. Możesz określić wartość nazwy użytkownika jako DOMAIN\username lub username.
<TeamProjectCollectionUrl> Adres URL kolekcji projektów, która zawiera pliki lub foldery, które chcesz odłożyć, na przykład http://myserver:8080/tfs/DefaultCollection/.

Opcje

opcji opis
/new Wybrany stan każdej oczekującej zmiany, jak pokazano w programie Visual Studio Zaewidencjonuj okno dialogowe, komentarz, skojarzone elementy robocze, notatki ewidencjonowania i przyczyna zastąpienia zasad ewidencjonowania, są przechowywane na maszynie dewelopera jako oczekujące zmiany do momentu ich zaewidencjonowania. Opcja /new czyści te metadane ewidencjonu przed zaewidencjonowaniu.
/move Usuwa oczekujące zmiany z obszaru roboczego po pomyślnym zakończeniu operacji odłożonego.
/replace Zastępuje istniejący zestaw półek taką samą nazwą i właścicielem, jak określona przez Ciebie.
/delete Usuwa określony zestaw półek. Z tą opcją można połączyć tylko opcję /server. Jeśli nie dołączysz opcji /noprompt, zostanie wyświetlony komunikat potwierdzający, gdy zostanie określona opcja /delete.
/comment Dodaje określony komentarz opisujący zmiany odłożone.
/recursive Wszystkie elementy znajdujące się w określonym folderze zestawu na półce, jego podfoldery i wszystkie elementy znajdujące się w nim, jeśli podany itemspec jest folderem.
/noprompt Pomija wszelkie monity dotyczące danych wejściowych.
/validate Ta opcja wybiera Ocena zasad i notatek zaewidencjonowania przed odłożowaniem pole wyboru w oknie dialogowym Shelve — Pliki źródłowe po otwarciu. Po zaznaczeniu pola wyboru walidacji okno dialogowe ocenia zasady ewidencjonowania i sprawdza, czy wymagane są wypełnione notatki ewidencjonowane. Ta opcja jest przydatna, gdy zmiany są przekazywane do przeglądu i zaewidencjonowania przez inną osobę. Nieprawidłowa wartość w połączeniu z /noprompt.
/login Określa nazwę użytkownika i hasło do uwierzytelniania użytkownika za pomocą usługi Azure DevOps Server.
/collection Określa kolekcję projektów.

Uwagi

Polecenie shelve narzędzia wiersza polecenia tf wykonuje kopię zapasową oczekujących zmian, listę skojarzonych elementów roboczych, notatek ewidencjonowania w toku i komentarzy w zestawie na półce na serwerze Usługi Azure DevOps. Zestaw na półce jest bardzo podobny do zestawu zmian, który nie jest zatwierdzony na serwerze. Podobnie jak zestaw zmian, zestaw półek można pobrać z serwera do lokalnego obszaru roboczego przez dowolnego użytkownika, który ma wystarczające uprawnienia.

Odłogowanie to alternatywa dla sprawdzania oczekujących zmian, które nie zostały wystarczająco przetestowane. Jeśli chcesz przerwać pracę, użyj regałów:

  • Udostępnij zestaw lokalnych plików roboczych innym deweloperom lub testerom bez sprawdzania zmian na serwerze kontroli wersji.

  • Odłóż grupę oczekujących zmian tymczasowo bez ich zaewidencjonowania, aby można było zamiast tego pracować nad problemem o wyższym priorytecie. Po zakończeniu pracy nad zadaniem o wysokim priorytcie można przywrócić odłożone zmiany przy użyciu polecenia Unshelve.

Jeśli dołączysz opcję /move, polecenie shelve wycofa każdą poprawkę pliku odłożonego do wersji podstawowego obszaru roboczego , która jest ostatnią wersją pobraną z serwera do bieżącego obszaru roboczego. W szczególności dla wszystkich elementów, które odłożysz, opcja /move:

  • Używa Undo, aby cofnąć zmiany, które zostały odłożone. Pliki oczekujące na dodanie są usuwane z obszaru roboczego.

  • Pobiera podstawowe wersje obszaru roboczego wszystkich plików, dla których istnieją oczekujące wersje z serwera do bieżącego obszaru roboczego.

  • Oznacza wszystkie elementy w bieżącym obszarze roboczym tylko do odczytu.

Jeśli uwzględnisz opcję /delete, rozszerzenie TFVC trwale usunie określony zestaw półek z serwera Usługi Azure DevOps.

Aby uzyskać więcej informacji na temat korzystania z narzędzia wiersza polecenia tf, zobacz Używanie poleceń kontroli wersji programu Team Foundation.

Przykłady

Poniższy przykład tworzy nowy zestaw półek na serwerze Usługi Azure DevOps o nazwie Reflector_BuddyTest, przypisuje własność do użytkownika Pat, zwraca wszystkie elementy w bieżącym obszarze roboczym do najnowszej wersji pobranej podczas ostatniej operacji get i ustawia stan tylko do odczytu:

c:\projects> tf shelve Reflector_BuddyTest;Pat /move

Poniższy przykład usuwa istniejący zestaw półek new-feature z serwera, tworzy nowy zestaw półek według tej nazwy i zachowuje wszystkie oczekujące zmiany w bieżącym obszarze roboczym:

c:\projects> tf shelve new-feature /replace

Poniższy przykład tworzy zestaw na półce o nazwie HelloWorld_TestMe, który zawiera wszystkie oczekujące zmiany do wszystkich plików .cs w C:\projects folder roboczy i jego podfoldery:

c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive

Poniższy przykład usuwa zestaw HelloWorld_24 na półce:

c:\projects> tf shelve HelloWorld_24 /delete