276 votes

Comment utiliser TortoiseSVN via la ligne de commande ?

J'utilise TortoiseSVN et je veux utiliser les options SVN en ligne de commande.

J'ai utilisé la commande :

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

et obtenir l'erreur suivante :

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

Est-ce parce que je dois ajouter une variable d'environnement ? Ou TortoiseSVN ne peut-il pas être utilisé à partir de la ligne de commande ?

5 votes

Je suggère slik subversion . Et après l'installation, ajoutez simplement son répertoire bin à votre chemin. -bhups

0 votes

J'ai généralement le SVN standard installé ainsi que TortoiseSVN. Ajoutez simplement l'emplacement binaire de SVN à votre variable d'environnement PATH. L'utilisation de l'outil de ligne de commande standard de SVN sera meilleure pour obtenir de l'aide et de la documentation que l'utilisation de tout autre pseudo-client SVN.

0 votes

Il s'ajoute au PATH à l'installation de toute façon.

494voto

AnneTheAgile Points 2105

Par défaut, TortoiseSVN a toujours une GUI (Interface Utilisateur Graphique) associée à lui. Mais sur le programme d'installation (de la version 1.7 et plus) vous pouvez sélectionner l'option "outils client en ligne de commande" afin que vous puissiez appeler les commandes svn (comme svn commit et svn update) à partir de la ligne de commande.

Voici une capture d'écran de l'option "outils client en ligne de commande" dans le programme d'installation, vous devez vous assurer que vous la sélectionnez :

How-to-install-TortoiseSvn-CommandLineTools

52 votes

Personnellement, je préfère cette réponse à celle qui a été acceptée : pas d'installations secondaires, et un accès complet à la ligne de commande SVN standard.

2 votes

A également l'avantage supplémentaire que les versions de l'outil en ligne de commande restent en synchronisation avec la version de TortoiseSVN.

4 votes

... ce qui signifie, plus en détail : le format du répertoire de travail de Subversion a changé plusieurs fois, par exemple dans les versions 1.7 et 1.8. Un client 1.7 n'utilisera pas un ancien répertoire de travail à moins qu'il soit svn upgrade d ; après cela, un client 1.6 ne pourra plus l'utiliser.

131voto

Joey Points 148544

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 l'interface normale de Subversion.

Vous pouvez trouver des informations sur les options de ligne de commande de TortoiseSVN dans la documentation : Annexe D. Automatiser TortoiseSVN . Le programme principal avec lequel nous travaillons ici est TortoiseProc.exe .

Mais une note, presque au sommet, 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 de TortoiseSVN pour recueillir les entrées de l'utilisateur. Si vous voulez écrire un script qui ne nécessite aucune entrée, vous devriez plutôt utiliser le client officiel de ligne de commande Subversion.

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

2 votes

Juste pour ajouter à cela - assurez-vous que Tortue est sur votre chemin. Sinon, rien ne fonctionnera.

2 votes

Sur la base de cette réponse, je pense que le mieux serait d'installer le client de ligne de commande SVN actuel plutôt que d'apprendre une deuxième interface de ligne de commande. Je ne sais pas comment faire cela, cependant.

2 votes

Thomas : Par défaut, TortoiseSVN et Slik SVN modifieront le chemin en conséquence.

30voto

Warlock Points 2253

Pour utiliser l'aide à la commande, vous devez suivre les étapes suivantes :

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

    • ouvrir Propriétés du système ' ;
    • sur l'onglet ' Avancé Cliquez sur l'icône Variables d'environnement Bouton '
    • dans la section Variables du système sélectionner Chemin d'accès et cliquez sur l'option editar '
    • ajouter la valeur de la variable avec le chemin d'accès à TortoiseProc.exe par exemple :

      C:\Program Archivos \TortoiseSVN\bin

  2. Puisque vous vous êtes inscrit TortoiseProc vous pouvez l'utiliser en fonction de TortoiseSVN documentation .

    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 /endv:60 /closeonend:0

P.S. 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

0 votes

Le principal problème n'est pas le nom de l'exécutable (et la façon de le trouver) mais la syntaxe totalement différente de la ligne de commande ; voir ma réponse qui parle de ma méthode de travail. tsvn (qui n'existait pas à l'époque de la réponse de Warlock). Les versions récentes de Windows permettent de spécifier tous les arguments comme %* (au lieu de %1 %2 %3 ...).

10voto

Kiki Points 31

Pour activer svn, exécutez à 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 les "outils clients en ligne de commande".

0 votes

Pour ceux d'entre vous qui se demandent où se trouve l'option "Modifier" - essayez de réinstaller Tortoise SVN

1 votes

@maya Si vous l'avez déjà installé, n'essayez pas de le désinstaller et de le réinstaller. Allez sur Control Panel\Programs\Programs and Features cherchez Tortoise SVN et cliquez Change puis cliquez sur Modify .

10voto

SeanH Points 51

Ma solution était d'utiliser DOSKEY pour mettre en place 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:$*

Recherchez sur Google "doskey persist" pour obtenir des conseils sur la façon de configurer un fichier .cmd qui s'exécute chaque fois que vous ouvrez l'invite de commande, comme un fichier .*rc sous Unix.

0 votes

Super ! C'est la seule réponse qui invoque réellement TortoiseSVN, et non pas la réponse ordinaire svn à partir de la ligne de commande.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X