Utiliser TortoiseSVN via la ligne de commande

Je veux utiliser les options SVN en ligne de commande. J’utilise TortoiseSVN, et je lance 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 append une variable d’environnement ou autre chose.

Que dois-je faire ou ne pas utiliser TortoiseSVN à partir de la ligne de commande?

Par défaut, TortoiseSVN est toujours associé à une interface utilisateur graphique. Mais sur l’installateur (de la version 1.7 et ultérieure), vous pouvez sélectionner l’option “Outils client en ligne de commande” pour pouvoir appeler les commandes svn (comme svn commit et svn update) depuis la ligne de commande.

Voici une capture d’écran de l’option “Outils client en ligne de commande” du programme d’installation, vous devez vous assurer de la sélectionner:

Comment installer-TortoiseSvn-CommandLineTools

TortoiseSVN a une interface de ligne de commande qui peut être utilisée pour l’automatisation de l’interface graphique de TortoiseSVN et elle est différente de celle de Subversion.

Vous trouverez des informations sur les options de ligne de commande de TortoiseSVN dans la documentation: Annexe D. Automatisation de TortoiseSVN . Le programme principal avec lequel travailler est TortoiseProc.exe .

Mais une note à peu près au sumt 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 dialog TortoiseSVN pour collecter les entrées utilisateur. Si vous voulez écrire un script qui ne nécessite aucune entrée, vous devez utiliser le client de ligne de commande Subversion officiel à la place.

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

Si vous avez déjà installé l’interface graphique de TortoiseSVN et que vous vous demandez comment mettre à niveau les outils en ligne de commande, voici les étapes …

  1. Allez dans le Panneau de configuration Windows → Programme et fonctionnalités (Windows 7+)
  2. Localisez TortoiseSVN et cliquez dessus.
  3. Sélectionnez “Modifier” parmi les options disponibles.
  4. Reportez-vous à cette image pour d’autres étapes.

    Ligne de commande TortoiseSVN activée

  5. Une fois les outils client de ligne de commande terminés, ouvrez une invite de commande et tapez svn help pour vérifier la réussite de l’installation.

Pour utiliser le support de commande, vous devez suivre ces étapes:

  1. Définir le chemin dans les variables d’environnement:

    • ouvrir ‘ Propriétés du système ‘;
    • sur l’onglet ‘ Avancé ‘, cliquez sur le bouton ‘ Variables d’environnement
    • Dans la section ” Variables système “, sélectionnez l’option ” Chemin ” et cliquez sur ” Modifier
    • append une valeur de variable avec le chemin d’access au fichier TortoiseProc.exe , par exemple:

      C: \ Program Files \ TortoiseSVN \ bin

  2. Puisque vous avez enregistré TortoiseProc , vous pouvez l’utiliser dans la documentation de TortoiseSVN.

    Exemples:

    TortoiseProc.exe / command: commit /path:”c:\svn_wc\file1.txt*c:\svn_wc\file2.txt “/ logmsg:” message du journal de test “/ 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

PS Pour utiliser un nom convivial comme ‘svn’ au lieu de ‘TortoiseProc’, placez le fichier ‘svn.bat’ dans le répertoire de ‘TortoiseProc.exe’. Il y a un exemple de svn.bat:

 TortoiseProc.exe %1 %2 %3 

Pour permettre à svn d’exécuter à nouveau le programme d’installation de TortoiseSVN, sélectionnez “Modifier” (Autorise les utilisateurs à modifier la façon dont les fonctionnalités sont installées) et installez “les outils client de ligne de commande”.

Ma solution était d’utiliser DOSKEY pour configurer des 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 persiste” pour obtenir des conseils sur la façon de configurer un fichier .cmd qui s’exécute chaque fois que vous ouvrez une invite de commande comme un fichier. * Rc sous Unix.

Vous pouvez avoir les deux outils de ligne de commande TortoiseSVN et Apache Subversion installés. J’installe généralement les outils Apache SVN depuis le site de téléchargement de VisualSVN: https://www.visualsvn.com/downloads/

Une fois installé, placez le Subversion \ bin dans votre ensemble PATH. Vous pourrez alors utiliser TortoiseSVN lorsque vous souhaitez utiliser l’interface graphique, et vous disposez des outils de ligne de commande SVN appropriés à utiliser à partir de la ligne de commande.

Comme Joey l’a souligné, TortoiseSVN a sa propre syntaxe en ligne de commande. Malheureusement, c’est plutôt moche, si vous avez l’habitude de svn commandes, et qu’il ignore le répertoire de travail actuel, il n’est donc pas très utilisable – sauf pour les scripts.

J’ai créé un petit programme Python ( tsvn ) qui reproduit le plus fidèlement possible la syntaxe de la ligne de commande svn et appelle TortoiseSVN en conséquence. Ainsi, la différence entre appeler les outils en ligne de commande normaux et appeler TortoiseSVN est réduite à une petite lettre t au début.

Mon programme tsvn n’est pas encore complet mais déjà utile. On peut le trouver dans la fromagerie ( https://pypi.python.org/pypi/tsvn/ )

Après un certain temps, j’ai utilisé cette solution de contournement …

(au fichier .bat)

 SET "CHECKOUT=http://yoururl.url"; SET "PATH=your_folder_path" start "C:\Program Files\TortoiseSVN\bin" svn.exe checkout %CHECKOUT% %PATH% 

Mon correctif pour obtenir des commandes SVN était de copier les fichiers .exe et .dll à partir du répertoire TortoiseSVN et de les coller dans le dossier system32.

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

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

L’ajout de la corbeille au chemin devrait le faire fonctionner sans dupliquer les fichiers, mais cela n’a pas fonctionné pour moi.

Il y a une confusion qui oblige beaucoup d’utilisateurs de TortoiseSVN à utiliser les mauvais outils de ligne de commande lorsqu’ils recherchaient svn.exe client en ligne de commande svn.exe . *

Que dois-je faire ou ne pas utiliser TortoiseSVN à partir de la ligne de commande?

svn.exe

Si vous souhaitez exécuter des commandes Subversion à partir de l’invite de commande, vous devez exécuter le client de ligne de commande svn.exe . TortoiseSVN 1.6.x et les anciennes versions n’incluaient pas les outils de ligne de commande SVN, mais les versions modernes le font.

Si vous souhaitez obtenir des outils de ligne de commande SVN sans avoir à installer TortoiseSVN, consultez la page des dissortingbutions binarys SVN ou téléchargez simplement la dernière version depuis la page de téléchargement de VisualSVN .

Si des outils de ligne de commande SVN sont installés sur votre système, mais que l’erreur 'svn' is not recognized as an internal or external command , vous devez vérifier la variable d’environnement %PATH% . %PATH% doit inclure le chemin d’access au répertoire des outils SVN, par exemple C:\Program Files (x86)\VisualSVN\bin .

TortoiseProc.exe

En dehors de svn.exe , TortoiseSVN est livré avec TortoiseProc.exe qui peut être appelé à partir de l’invite de commande. Dans la plupart des cas, vous n’avez pas besoin d’utiliser cet outil, car il ne doit être utilisé que pour l’automatisation de l’interface graphique. TortoiseProc.exe n’est pas un remplacement pour le client de ligne de commande SVN.

Après avoir sélectionné “Outils de ligne de commande SVN”, cela deviendra comme ceci:

Entrez la description de l'image ici

J’avais déjà des outils en ligne de commande, mais je ne pouvais toujours pas corriger cette erreur.

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

Ensuite, je me suis rendu compte qu’après l’installation de SVN, je n’avais pas redémarré le PC, et c’était le principal problème.