Usuń plik z repozytorium SVN bez usuwania kopii lokalnej

217

Jak mogę „usunąć” plik, który jest już w repozytorium SVN, bez usuwania go z mojego systemu plików?

TortoiseSVN lub instrukcje wiersza poleceń są mile widziane.

Poniższe działa, ale mam nadzieję na coś ładniejszego:

  1. Skopiuj plik do innej lokalizacji poza repozytorium.
  2. SVN Usuń plik.
  3. Popełnić
  4. Skopiuj pliki z powrotem i pamiętaj, aby zignorować je przy przyszłych zatwierdzeniach.
srmark
źródło

Odpowiedzi:

265
svn delete --keep-local the_file
phihag
źródło
4
Dostaję „svn: Niepoprawna opcja: --keep-local” - Czy to dlatego, że mam 1.4.6?
barfoon
7
@barfoon: Tak, --keep-local jest dostępny tylko w wersji 1.5.0+. Obawiam się, że musisz wcześniej ręcznie skopiować plik lub sprawdzić go za pomocą svn cat.
phihag
4
I pamiętaj, aby wykonać tę operację po tej operacji.
Teemu Leisti
4
Podczas aktualizacji użytkownicy otrzymują najnowszą wersję z repozytorium. Ponieważ pytanie dotyczy sposobu usunięcia pliku z repozytorium, inni użytkownicy stwierdzą, że plik ten został usunięty podczas aktualizacji.
phihag
4
Tego starałem się uniknąć. Tak trudno jest po prostu usunąć coś ze SVN, gdy coś przypadkowo zostało sprawdzone ...
BrDaHa
104

Usuwanie plików i folderów

Jeśli chcesz usunąć element z repozytorium, ale przechowywać go lokalnie jako niewersjonowany plik / folder, użyj menu kontekstowego → Usuń (zachowaj lokalnie). Musisz przytrzymać klawisz Shift, klikając prawym przyciskiem myszy element w panelu listy eksploratora (prawy panel), aby zobaczyć to w rozszerzonym menu kontekstowym.

Usuń całkowicie:
kliknij prawym przyciskiem myszy → Menu → Usuń

Usuń i zachowaj lokalnie:
Shift + prawy przycisk myszy → Menu → Usuń

crashmstr
źródło
61

W TortoiseSVN możesz również Shift+ kliknąć prawym przyciskiem myszy, aby uzyskać menu zawierające „Usuń (zachowaj lokalność)”.

harpo
źródło
0

Zmień nazwę pliku, zatwierdź zmiany, w tym plik „usunięty”, i nie dołączaj nowego (przemianowanego) pliku.

Zmień nazwę pliku z powrotem.

Avram
źródło
-2

Jeśli chcesz usunąć jeden plik xxx.java z SVN:

  1. Przejdź do ścieżki obszaru roboczego, w którym znajduje się plik.
  2. Usuń ten plik z folderu (xxx.java)
  3. Kliknij prawym przyciskiem myszy i zatwierdź, a następnie otworzy się okno.
  4. Wybierz plik usunięty (xxx.java) z folderu, a następnie ponownie kliknij prawym przyciskiem myszy i usuń .. spowoduje to usunięcie pliku z SVN.
pavan
źródło
2
Spowoduje to usunięcie pliku - ale czy nie chodzi o zachowanie oryginalnego pliku po usunięciu go z SVN?
Timothy Jones