Utilisation de TortoiseSVN via la ligne de commande

je veux utiliser les options SVN commandline. J'utilise TortoiseSVN, et j'exécute plusieurs commandes et j'obtiens l'erreur suivante.

'svn' n'est pas reconnu comme une commande interne ou externe

j'ai utilisé la commande

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

je pense que je devrais ajouter une variable d'environnement ou quelque chose d'autre.

Que dois-je faire ou ne peux-je pas utiliser TortoiseSVN depuis la ligne de commande?

210
demandé sur Peter Mortensen 2009-10-26 18:11:03

13 réponses

par défaut TortoiseSVN a toujours une GUI (Interface utilisateur graphique) associé avec elle. Mais sur l'installateur (version 1.7 et ultérieure), vous pouvez sélectionner l'option "Outils client en ligne de commande" pour que vous puissiez appeler des commandes svn (comme svn commit et svn update) depuis la ligne de commande.

voici une capture d'écran de l'option "command line client tools" dans l'installateur, vous devez vous assurer de la sélectionner:

How-to-install-TortoiseSvn-CommandLineTools

397
répondu AnneTheAgile 2012-06-28 01:01:49

TortoiseSVN a une interface en ligne de commande qui peut être utilisée pour L'automatisation GUI de TortoiseSVN et qui est différente de celle de Subversion normale.

vous pouvez trouver des informations sur les options en ligne de commande de TortoiseSVN dans la documentation: L'Annexe D. L'Automatisation De TortoiseSVN . Le programme principal pour travailler avec ici est TortoiseProc.exe .

mais une note en haut dit déjà:

rappelez-vous que TortoiseSVN est un client GUI, et ce guide d'automatisation vous montre comment faire apparaître les boîtes de dialogue TortoiseSVN pour recueillir l'entrée de l'utilisateur. Si vous voulez écrire un script qui ne nécessite aucune entrée, vous devez utiliser le client officiel de la ligne de commande Subversion.

une autre option serait d'installer les binaires Subversion. Slik SVN est une belle construction (et ne nécessite pas un enregistrement comme Collabnet). Les versions récentes de TortoiseSVN incluent également le client en ligne de commande si vous choisissez de l'installer.

125
répondu Joey 2017-06-27 11:17:50

dans le cas où vous avez déjà installé L'interface graphique TortoiseSVN et vous demandez comment passer aux outils en ligne de commande, voici les étapes...

  1. allez sur le Panneau de configuration de Windows → programme et caractéristiques (Windows 7+)
  2. Localisez TortoiseSVN et cliquez dessus.
  3. , Sélectionnez "Modifier" dans les options disponibles.
  4. reportez-vous à cette image pour les étapes suivantes.

    TortoiseSVN Command Line Enable

  5. après avoir terminé les outils du client en ligne de commande, Ouvrez une invite de commande et tapez svn help pour vérifier l'installation réussie.

63
répondu Devendra Vaja 2017-09-06 21:13:03

pour utiliser le support de commande, vous devez suivre les étapes suivantes:

  1. définir le chemin dans les Variables D'environnement:

    • ouvrir " Propriétés Système ';
    • sur l'onglet ' Avancé 'cliquez sur' Variables d'Environnement bouton
    • dans la section Variables système " sélectionner " Chemin option et cliquez sur " modifier '
    • ajoute une valeur variable avec le chemin vers TortoiseProc.exe fichier, par exemple:

      C:\Program Files\TortoiseSVN\bin

  2. depuis que vous avez enregistré TortoiseProc , vous pouvez l'utiliser dans selon TortoiseSVN documentation .

    exemples:

    TortoiseProc.exe /commande:s'engager /chemin d'accès:"c:\svn_wc\file1.txt*c:\svn_wc\file2.txt" /logmsg:"journal de test message" /closeonend:0

    TortoiseProc.exe /commande:mise à jour /chemin d'accès:"c:\svn_wc\" /closeonend:0

    TortoiseProc.exe /commande:log /chemin d'accès:"c:\svn_wc\file1.txt" / startrev: 50 /endrev: 60 / date de clôture: 0

P. S. À utiliser friendly name like 'svn' au lieu de 'TortoiseProc, de la place" svn.bat' fichier dans le répertoire de " TortoiseProc.exe'. Il y a un exemple de svn.chauve-souris:

TortoiseProc.exe %1 %2 %3
25
répondu Warlock 2012-11-26 06:25:30

pour permettre à svn d'exécuter à nouveau le programme D'installation de TortoiseSVN, sélectionnez" Modifier "(permet aux utilisateurs de changer la façon dont les fonctionnalités sont installées) et installez"outils client en ligne de commande".

8
répondu Kiki 2013-07-02 09:10:13

ma solution était d'utiliser DOSKEY pour configurer quelques Alias pour les commandes que j'utilise le plus:

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 persistent" pour des conseils sur la façon de configurer un .cmd fichier qui s'exécute chaque fois que vous ouvrez l'invite de commande comme une .* fichier rc dans Unix.

8
répondu SeanH 2013-12-02 21:38:50

vous pouvez avoir les outils en ligne de commande TortoiseSVN et Apache Subversion installés. J'installe habituellement les outils Apache SVN à partir du site de téléchargement de VisualSVN: https://www.visualsvn.com/downloads/

une fois installé, placez le Subversion\bin dans votre chemin d'accès. Vous pourrez alors utiliser TortoiseSVN lorsque vous voulez utiliser L'interface graphique, et vous disposez des outils SVN en ligne de commande appropriés à utiliser à partir de la ligne de commande.

2
répondu David 2017-11-17 05:25:09

comme Joey l'a souligné, TortoiseSVN a sa propre syntaxe de ligne de commande. Malheureusement, il est assez laid, si vous êtes habitué aux commandes svn , et qu'il ignore le répertoire de travail courant, il n'est donc pas très utilisable - sauf pour les scripts.

j'ai créé un petit programme Python ( tsvn ) qui imite le plus possible la syntaxe svn et appelle TortoiseSVN en conséquence. Ainsi, la différence entre appeler la normale outils de ligne de commande et appel à TortoiseSVN est réduite à une petite lettre t au début.

mon programme tsvn n'est pas encore terminé, mais il est déjà utile. Il se trouve dans le magasin cheeseshop ( https://pypi.python.org/pypi/tsvn / )

1
répondu Tobias 2013-06-28 07:50:37

après un certain temps, j'ai utilisé cette solution...

(à l' .fichier bat)

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

start "C:\Program Files\TortoiseSVN\bin" svn.exe checkout %CHECKOUT% %PATH%
1
répondu jorgesimoes 2017-09-06 21:09:19

mon correctif pour obtenir les commandes SVN était de les copier .exe et .les fichiers dll à partir du répertoire TortoiseSVN et les coller dans le répertoire System 32.

vous pouvez également exécuter la commande à partir du répertoire TortoiseSVN et ajouter le chemin du répertoire de travail à chaque commande. Par exemple:

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

ajouter la bin au chemin devrait le faire fonctionner sans dupliquer les fichiers, mais ça n'a pas fonctionné pour moi.

1
répondu KC an EE 2017-09-06 21:11:20

il y a une confusion qui fait que beaucoup d'utilisateurs de TortoiseSVN utilisent les mauvais outils en ligne de commande alors qu'ils étaient à la recherche du client en ligne de commande svn.exe .*

Que dois-je faire ou ne puis-je pas utiliser TortoiseSVN depuis la ligne de commande?

svn.exe

si vous voulez exécuter des commandes Subversion à partir de l'invite de commande, vous devez exécuter le svn.exe client en ligne de commande. TortoiseSVN 1.6.les versions x et plus anciennes n'incluaient pas D'outils de ligne de commande SVN, mais les versions modernes en contiennent.

si vous souhaitez obtenir des outils en ligne de commande SVN sans avoir à installer TortoiseSVN, consultez la page distributions binaires SVN ou téléchargez simplement la dernière version de page de téléchargements de VisualSVN .

si vous avez installé des outils en ligne de commande SVN sur votre système, mais toujours l'erreur 'svn' is not recognized as an internal or external command , vous devez cocher %PATH% variable d'environnement. %PATH% doit inclure le chemin vers le répertoire SVN tools par exemple C:\Program Files (x86)\VisualSVN\bin .

TortoiseProc.exe

mis à part svn.exe , TortoiseSVN est livré avec TortoiseProc.exe qui peut être appelé depuis l'invite de commande. Dans la plupart des cas, vous faites pas besoin d'utiliser cet outil, parce qu'il devrait être utilisé uniquement pour l'automatisation GUI. TortoiseProc.exe n'est pas un remplacement du client SVN command-line.

1
répondu bahrep 2017-09-06 21:15:40

après avoir sélectionné "SVN command line tools" il deviendra comme ceci:

Enter image description here

0
répondu Alvin567 2015-10-30 14:19:46

j'avais déjà installé des outils en ligne de commande, mais je n'ai pas pu corriger cette erreur.

  • J'ai redémarré Android Studio, mais il n'a pas résolu mon problème

puis j'ai réalisé qu'après avoir installé SVN Je n'avais pas redémarré le PC, et c'était le problème majeur.

-1
répondu UMAR 2017-09-06 21:14:00