Polecenie Destroy (Kontrola wersji serwera Team Foundation)

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

Visual Studio 2019 | Visual Studio 2022

tf destroy Użyj polecenia , aby zniszczyć lub trwale usunąć pliki kontrolowane przez wersję z Kontrola wersji serwera Team Foundation (TFVC).

Uwaga

Usunięcie repozytorium TFVC w usłudze Azure Devops nie jest dozwolone po jego utworzeniu. Polecenie tf destroy spowoduje zniszczenie lub trwałe usunięcie tylko plików lub folderów kontrolowanych przez wersję, ale nie spowoduje usunięcia repozytorium TFVC. Będzie ona nadal wyświetlana na liście opcji z usuniętym komunikatem.

Czasami trzeba wyczyścić systemy kontroli wersji. Jeśli na przykład niektóre pliki są zainfekowane wirusem komputera, należy je trwale usunąć z kontroli wersji. Nie usuwaj plików, które są nadal potrzebne. Nie można cofnąć akcji niszczenia.

Przed uruchomieniem tf destroy/keephistory bez opcji najpierw usuń pliki, które chcesz zniszczyć. Aby uzyskać więcej informacji, zobacz Usuwanie plików i folderów z kontroli wersji.

Po usunięciu plików można zsynchronizować magazyn TFVC. W przeciwnym razie magazyn nie zostanie zsynchronizowany z zniszczonym elementem.

Wymagania wstępne

Aby użyć destroy polecenia, należy należeć do grupy zabezpieczeń Team Foundation Administracja istrators. Aby uzyskać więcej informacji, zobacz Domyślne uprawnienia kontroli wersji serwera Team Foundation.

Składnia

tf destroy [/keephistory] <itemspec1>[;<versionspec>][<itemspec2>...<itemspecN>] 
[/stopat:<versionspec>] [/preview] [/startcleanup] [/noprompt] [/silent] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]]

Parametry

Argumenty

Argument

Opis

<itemspec1> [<itemspec2>...<itemspecN>]

Określa ścieżkę serwera pliku lub folderu do zniszczenia. Użyj wielu itemspec wartości, aby usunąć wiele elementów. Na przykład tf destroy $/TeamProject1 $/teamProject2 $/TeamProject3.

Ścieżki lokalne nie są obsługiwane.

<versionspec>

Udostępnia wersję, taką jak C58/keephistory dla opcji lub /stopat . Dozwolone wartości to date, tiplub określony zestaw zmian. Aby uzyskać więcej informacji na temat analizowania specyfikacji wersji w celu określenia, które elementy znajdują się w jego zakresie, zobacz Use Team Foundation version control commands (Używanie poleceń kontroli wersji programu Team Foundation).

<username>

Udostępnia wartość /login opcji. Wartość można określić username jako DOMAIN\username lub username.

TeamProjectCollectionUrl

Adres URL kolekcji projektów, która zawiera pliki, które chcesz zniszczyć, na przykład http://myserver:8080/tfs/DefaultCollection.

Opcje

Opcja

Opis

/keephistory

Opcjonalny. Określa, że historia pliku jest zachowywana nawet wtedy, gdy jego zawartość jest niszczona. Tej opcji nie można określić za pomocą /preview opcji .

/stopat

Opcjonalny. Można użyć tylko wtedy, gdy /keephistory określono również.

Określa wersję pliku i pliki, które następują po niej, dla których historia jest zachowywana.

Domyślną wersją elementu /stopat jest tip (T) najnowsza zaewidencjonowana wersja elementu.

Nie można użyć etykiet ani wartości obszaru roboczego versionspec , aby określić element dla /stopat opcji.

/preview

Wyświetla pliki, które zostaną zniszczone w oknie wiersza polecenia. W tf destroy przypadku uruchamiania w trybie podglądu pliki nie są w rzeczywistości niszczone.

Uwaga

Tekst w oknie wiersza polecenia wyświetla wyraz Zniszczony z każdym plikiem, który zostanie zniszczony . Jednak plik nie jest w rzeczywistości niszczony, gdy /preview jest używana opcja.

/startcleanup

Wymusza proces czyszczenia metadanych tfVC, aby rozpocząć natychmiast po zakończeniu usuwania. Jeśli użytkownik nie określi /startcleanup, zniszczony proces czyszczenia metadanych występuje, gdy konserwacja bazy danych czyści wszystkie pliki, do których nie odwołuje się już serwer Usługi Azure DevOps. Domyślnie czyszczenie jest zaplanowane co pięć dni. Siedem dni po wyczyszczeniu metadanych kontroli wersji serwera Team Foundation zawartość zostanie usunięta przez inny proces czyszczenia. Domyślnie ten proces czyszczenia zawartości jest uruchamiany raz dziennie.

/noprompt lub /i

Określa, że niszczenie plików nie jest interakcyjne. /i to alias dla elementu /noprompt.

/silent

Określa, że podczas niszczenia plików lub folderów dane wyjściowe nie są zapisywane w oknie wiersza polecenia.

/login

Określa nazwę użytkownika i hasło do uwierzytelniania użytkownika za pomocą kontroli wersji serwera Team Foundation.

/collection

Określa kolekcję projektów.

Uwagi

W przypadku użycia tf destroy funkcji do zniszczenia plików kontroli wersji warstwa aplikacji serwera TFVC odbiera żądanie zniszczenia i sprawdza, czy jesteś członkiem grupy zabezpieczeń Team Foundation Administracja istrators. Jeśli nie jesteś członkiem, system wyświetli okno dialogowe komunikatu o błędzie informujące o tym, że nie masz wystarczających uprawnień do wykonania operacji.

Gdy system zweryfikuje Twoje uprawnienia, uruchamia polecenie destroy. To polecenie usuwa wszystkie odwołania do plików, zestawy półek i oczekujące zmiany. Rzeczywiste zniszczenie plików, które jest trwałym usunięciem, odbywa się następnym razem, gdy zawartość, do której nie odwołuje się już usługa Azure DevOps Server, zostanie wyczyszczona. Można również określić /startcleanup opcję wyczyszczenia plików natychmiast po tf destroy uruchomieniu.

Jeśli uruchomisz polecenie tf destroy bez określenia /i parametru i /previewsystem wyświetli konsolę Tak lub Nie monituj o każdą filespec wartość. W przeciwnym razie można określić wartość Tak do wszystkich.

  • Jeśli nie określisz /keephistoryelementu , zostanie wyświetlony monit przez tekst interakcyjny, który ostrzega o oczekujących zmianach, jeśli istnieją. Tekst interakcyjny wskazuje, /preview jeśli chcesz uzyskać więcej informacji o zmianach.

  • Jeśli określisz /keephistorywartość , zostanie również wyświetlony monit o wartość Tak, Nie lub Tak do wszystkich tekstu. Jeśli wybierzesz opcję Tak lub Tak do wszystkich, rozpocznie się proces zniszczenia, a ścieżki serwera do zniszczonych elementów zostaną wyświetlone w oknie wiersza polecenia.

Destroyed: <serverItem1>
Destroyed: <serverItem2>
Destroyed: ...

Jeśli określono versionspec wartość jako tip, ścieżki serwera wyświetlane w oknie wiersza polecenia obejmują identyfikatory usuwania. Na przykład Destroyed: $/Test1/MyProject;X123 może pojawić się w oknie wiersza polecenia.

Jeśli używasz /preview tej opcji, pliki nie zostaną zniszczone, ale tekst wiersza polecenia wyświetla pliki, które zostaną zniszczone. Jeśli na przykład wprowadzisz polecenie tf destroy /preview $/Test1/MyProject/MyProject/Program.cs w wierszu polecenia, w oknie polecenia zostanie wyświetlony następujący tekst:

Destroyed: $/Test1/MyProject/MyProject/Program.cs

Jednak plik nie został zniszczony, ponieważ użyto /preview opcji .

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

Wpływ /keephistory na inne operacje kontroli wersji

Jeśli określisz /keephistory opcję zachowania historii zniszczonych plików, pliki są traktowane jako zniszczone przez następujące operacje kontroli wersji serwera TEAMVC:

  • Zmień zawartość. Jeśli spróbujesz zmienić zawartość zniszczonego pliku, na przykład edycję lub gałąź, system wystawia komunikat o błędzie informujący o tym, że zawartość została zniszczona.

  • Rozgałęzianie, scalanie lub odstrzymywanie. Jeśli spróbujesz rozgałęzić, scalić lub usunąć zniszczone elementy, system wyświetli komunikat o błędzie informujący o tym, że zawartość elementów została zniszczona.

Niszczenie poprzednio usuniętych elementów

Jeśli element został już usunięty, identyfikator usunięcia jest do niego dołączony i powoduje zmianę nazwy pliku.

Wyszukiwanie kodu nie obsługuje tf destroy powiadomień, więc użycie tf destroy repozytoriów TFVC nie spowoduje automatycznego usunięcia plików z indeksu wyszukiwania. W rezultacie te pliki są wyświetlane w wynikach wyszukiwania kodu. Aby uniknąć tych scenariuszy plików duchów, usuń pliki przed operacją tf destroy .

Przykłady

Poniższy przykład trwale usuwa a.cs pliku.

tf destroy $/proj/pi/a.cs

Poniższy przykład usuwa folder aFolder:

tf delete $/MyTeamProject/aFolder

Aby zniszczyć usunięty element aFolder, wprowadź polecenie w wierszu polecenia:

tf destroy $/MyTeamProject/aFolder;x123

gdzie x123 to identyfikator usunięcia.