Używanie TortoiseSVN za pomocą wiersza poleceń

Chcę użyć opcji SVN wiersza poleceń. Używam TortoiseSVN i uruchamiam kilka komend i dostaję następujący błąd.

'svn' nie jest rozpoznawany jako wewnętrzne lub zewnętrzne polecenie

Użyłem polecenia

svn checkout [-N] [--ignore-externals] [-r rev] URL PATH

Myślę, że powinienem dodać jakąś zmienną środowiskową lub coś innego.

Co powinienem zrobić lub nie mogę użyć TortoiseSVN z linii poleceń?

Author: Peter Mortensen, 2009-10-26

13 answers

Domyślnie TortoiseSVN zawsze ma powiązany z nim GUI (Graphical User Interface). Ale w instalatorze (w wersji 1.7 i nowszej) możesz wybrać opcję "command line client tools", dzięki czemu możesz wywoływać polecenia svn (takie jak SVN commit i svn update) z linii poleceń.

Oto zrzut ekranu opcji "command line client tools" w instalatorze, musisz upewnić się, że ją wybierzesz:

Jak-zainstalować-TortoiseSvn-CommandLineTools

 397
Author: AnneTheAgile,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-28 01:01:49

TortoiseSVN ma interfejs wiersza poleceń, który może być używany do automatyzacji interfejsu graficznego TortoiseSVN i różni się od zwykłego Subversion.

Informacje o opcjach wiersza poleceń TortoiseSVN można znaleźć w dokumentacji: Dodatek D. Automatyzacja TortoiseSVN. Głównym programem do pracy jest TortoiseProc.exe.

Ale notka na górze już mówi:

Pamiętaj, że TortoiseSVN jest klientem GUI, a to przewodnik automatyzacji pokazuje, jak sprawić, by okna dialogowe TortoiseSVN były wyświetlane, aby zbierać dane wejściowe użytkownika. Jeśli chcesz napisać skrypt, który nie wymaga wprowadzania danych, powinieneś użyć oficjalnego klienta wiersza poleceń Subversion.

Inną opcją byłoby zainstalowanie plików binarnych Subversion. SLIK SVN to ładny build (i nie wymaga rejestracji jak Collabnet). Najnowsze wersje TortoiseSVN zawierają również klienta wiersza poleceń, jeśli zdecydujesz się go zainstalować.

 125
Author: Joey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-27 11:17:50

Jeśli masz już zainstalowany interfejs graficzny TortoiseSVN i zastanawiasz się, jak uaktualnić narzędzia do wiersza poleceń, oto kroki...

  1. przejdź do Panelu sterowania Windows → Program i funkcje (Windows 7+)
  2. Zlokalizuj TortoiseSVN i kliknij na niego.
  3. Wybierz "Zmień" z dostępnych opcji.
  4. Zobacz ten obrazek, aby uzyskać dalsze kroki.

    Włącz Wiersz Poleceń TortoiseSVN

  5. Po zakończeniu narzędzia klienta wiersza poleceń otwórz polecenie prompt i wpisz svn help, aby sprawdzić pomyślną instalację.

 63
Author: Devendra Vaja,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-06 21:13:03

Aby skorzystać z obsługi poleceń należy wykonać następujące kroki:

  1. Definiowanie ścieżki w zmiennych środowiskowych:

    • open ' Właściwości systemu';
    • na karcie' zaawansowane 'Kliknij przycisk' zmienne środowiskowe '
    • w sekcji " zmienne systemowe "wybierz opcję" ścieżka "i kliknij" edycja "
    • Dołącza wartość zmiennej ze ścieżką do TortoiseProc.exe plik, dla przykład:

      C:\Program Files\TortoiseSVN \ bin

  2. Ponieważ zarejestrowałeś TortoiseProc , możesz go używać zgodnie z dokumentacją TortoiseSVN .

    Przykłady:

    TortoiseProc.exe / command:commit / align = "left" / c:\svn_wc\file1.txt*c:\svn_wc\file2.txt" /logmsg:" test log message " / closeonend: 0

    TortoiseProc.exe / command: update / path:"c:\svn_wc\" / closeonend: 0

    TortoiseProc.exe / command: log / path:"c:\svn_wc\file1.txt" / startrev: 50 /endrev:60 / closeonend:0

P. S. Aby używać przyjaznej nazwy jak " svn "zamiast " TortoiseProc", należy umieścić " svn.plik bat w katalogu ' TortoiseProc.exe". Jest przykład svn."bat": {]}

TortoiseProc.exe %1 %2 %3
 25
Author: Warlock,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-26 06:25:30

Aby włączyć svn uruchom ponownie program instalacyjny TortoiseSVN, wybierz "Modify" (pozwala użytkownikom na zmianę sposobu instalacji funkcji) i zainstaluj "command line client tools".

 8
Author: Kiki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-02 09:10:13

Moim rozwiązaniem było użycie DOSKEY aby ustawić kilka aliasów dla komend, których używam najczęściej:

DOSKEY svc=TortoiseProc.exe /command:commit /path:.
DOSKEY svu=TortoiseProc.exe /command:update /path:.
DOSKEY svl=TortoiseProc.exe /command:log /path:.
DOSKEY svd=TortoiseProc.exe /command:diff /path:$*

Google "Doskey persist" dla wskazówek, jak skonfigurować .plik cmd, który uruchamia się za każdym razem, gdy otwierasz wiersz polecenia, jak a .* plik rc w Uniksie.

 8
Author: SeanH,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-02 21:38:50

Możesz mieć zainstalowane zarówno TortoiseSVN, jak i narzędzia wiersza poleceń Apache Subversion. Zazwyczaj instaluję narzędzia Apache SVN ze strony pobierania VisualSVN: https://www.visualsvn.com/downloads/

Po zainstalowaniu umieść Subversion \ bin w ustawionej ścieżce. Wtedy będziesz mógł używać TortoiseSVN, gdy chcesz używać GUI, i masz odpowiednie narzędzia wiersza poleceń SVN do użycia z wiersza poleceń.

 2
Author: David,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-17 05:25:09

Jak zauważył Joey, TortoiseSVN ma własną składnię wiersza poleceń. Niestety jest dość brzydki, jeśli jesteś przyzwyczajony do poleceń svn, i ignoruje bieżący katalog roboczy, więc nie jest zbyt użyteczny-z wyjątkiem skryptów.

Stworzyłem mały program w Pythonie (tsvn), który naśladuje składnię linii poleceń svn i wywołuje odpowiednio TortoiseSVN. Tak więc różnica między wywołaniem zwykłych narzędzi wiersza poleceń a wywołaniem TortoiseSVN jest zredukowana do małej litery t na początku.

Mój tsvn program nie jest jeszcze kompletny, ale już przydatny. Można go znaleźć w cheeseshop ( https://pypi.python.org/pypi/tsvn/)

 1
Author: Tobias,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-28 07:50:37

Po jakimś czasie skorzystałem z tego obejścia...

(w .plik bat)

SET "CHECKOUT=http://yoururl.url";
SET "PATH=your_folder_path"

start "C:\Program Files\TortoiseSVN\bin" svn.exe checkout %CHECKOUT% %PATH%
 1
Author: jorgesimoes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-06 21:09:19

Moją poprawką do pobierania komend SVN było kopiowanie .exe i .pliki dll z katalogu TortoiseSVN i wklejenie ich do folderu system32.

Możesz również wykonać polecenie z katalogu TortoiseSVN i dodać ścieżkę katalogu roboczego do każdego polecenia. Na przykład:

C:\Program Files\TortoiseSVN\bin> svn st -v C:\checkout

Dodanie kosza do ścieżki powinno sprawić, że będzie działał bez duplikowania plików, ale nie zadziałało dla mnie.

 1
Author: KC an EE,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-06 21:11:20

Istnieje zamieszanie, które powoduje, że wielu użytkowników TortoiseSVN używa niewłaściwych narzędzi wiersza poleceń, gdy faktycznie szukali klienta wiersza poleceń svn.exe.*

Co powinienem zrobić lub nie mogę użyć TortoiseSVN z linii poleceń?

Svn.exe

Jeśli chcesz uruchomić polecenia Subversion z wiersza polecenia, powinieneś uruchomić svn.exe klient wiersza poleceń. TortoiseSVN 1.6.x i starsze wersje nie zawierały wiersza poleceń SVN narzędzia, ale współczesne wersje tak.

Jeśli chcesz uzyskać narzędzia wiersza poleceń SVN bez konieczności instalowania TortoiseSVN, sprawdź binarne dystrybucje SVN strona lub po prostu pobierz najnowszą wersję z VisualSVN strona do pobrania.

Jeśli masz zainstalowane w systemie narzędzia wiersza poleceń SVN, ale nadal pojawia się błąd 'svn' is not recognized as an internal or external command, powinieneś sprawdzić zmienną środowiskową %PATH%. %PATH% musi zawierać ścieżkę do katalogu SVN tools np. C:\Program Files (x86)\VisualSVN\bin.

TortoiseProc.exe

Oprócz svn.exe, TortoiseSVN zawiera TortoiseProc.exe, które można wywołać z wiersza polecenia. W większości przypadków nie nie trzeba używać tego narzędzia, ponieważ powinno ono być używane tylko do automatyzacji GUI. {[7] } nie jest zamiennikiem klienta wiersza poleceń SVN.

 1
Author: bahrep,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-06 21:15:40

Po wybraniu "SVN command line tools" stanie się tak:

Tutaj wpisz opis obrazka

 0
Author: Alvin567,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-30 14:19:46

Miałem już zainstalowane narzędzia wiersza poleceń, ale nadal nie byłem w stanie naprawić tego błędu.

  • zrestartowałem Android Studio, ale to nie rozwiązało mojego problemu

Potem zdałem sobie sprawę, że po zainstalowaniu SVN nie uruchomiłem ponownie komputera, i to był główny problem.

 -1
Author: UMAR,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-06 21:14:00