web-dev-qa-db-fra.com

Impossible d'exécuter des commandes svn sur un référentiel version 1.7

Je ne parviens pas à exécuter les commandes svn dans un référentiel existant.

Lancer svn status a pour résultat:

gene @ gene-ThinkPad-T60p: ~/Dropbox/CDS $ svn status svn: Le chemin '.' semble faire partie d'une Subversion 1.7 ou supérieure
copie de travail. Veuillez mettre à jour votre client Subversion pour utiliser cette
copie de travail.

Après quelques recherches sur Google, j’ai pensé que la bonne chose à faire serait d’exécuter svn upgrade (mais c’est un redoublement, la mise à niveau ne met pas à niveau votre installation de SVN, elle met à niveau la version implicite du projet). En tout état de cause, la mise à niveau n'est pas disponible dans la version 1.6.

gene @ gene-ThinkPad-T60p: mise à niveau ~/Dropbox/CDS $ svn
Commande inconnue: 'upgrade'
Tapez 'svn help' pour l'utiliser.

J'ai essayé de mettre à jour Subversion (svn sur les lignes de commande). J'ai essayé Sudo apt-get update puis Sudo apt-get upgrade, sans effet. J'ai aussi essayé Sudo apt-get install Subversion, sans effet.

J'ai téléchargé le code source et essayé de construire Subversion, mais j'ai eu cette erreur après avoir exécuté ./configure

...tronqué...

/ bin/grep -E vérifiant si ln -s fonctionne ... oui recherchant un
Installation compatible BSD .../usr/bin/install -c configure: Apache
Vérification de la configuration de la bibliothèque de Portable Runtime (APR) pour APR ... non
configure: AVERTISSEMENT: APR introuvable. Apache Portable Runtime (APR)
bibliothèque introuvable. S'il vous plaît installer APR sur ce système et
configure Subversion avec l'option --with-apr appropriée.

Vous devez probablement faire quelque chose de similaire avec Apache Portable
Runtime Utility (APRUTIL) puis configurez Subversion avec
les options --with-apr et --with-apr-util.

configure: error: aucun APR approprié trouvé

J'avais déjà lu quelques pages sur l'utilitaire APR dans le fichier Lisez-moi pour SVN, mais cela semblait très compliqué. Peut-être que APRUTIL sert à installer la version serveur de SVN plutôt que le client?

Cette commande Sudo apt-get install libapache2-svn indique que je suis déjà à la version la plus récente.

(edit :) Quand j'essaie Sudo apt-get install Subversion il dit que je suis à la dernière version

Lecture des listes de paquets ... Terminé
Construire un arbre de dépendance
Lecture des informations d'état ... Terminé
Subversion est déjà la version la plus récente.
0 mis à niveau, 0 nouvellement installé, 0 à supprimer et 1 non mis à niveau.

Mais ma version actuelle (basée sur svn --version) est svn, version 1.6.17 (r1128011) compilée le 26 juin 2013 à 20:44:02. Cela me semble récent, mais selon le site Web, ils sont déjà à 1,8.

Merci d'avance pour votre aide.

1
geneorama

Je m'excuse, mais je n'ai pas très bien réussi à poser la question. Pour ma défense, cela était dû à de nombreuses tentatives différentes pour résoudre le problème et j'ai perdu la trace des étapes.

Mais voici la réponse à la question de savoir pourquoi les commandes SVN ne fonctionnaient pas et pourquoi la mise à niveau ne fonctionnait pas.

Mon problème était que j'utilisais Dropbox pour synchroniser mes référentiels entre ordinateurs, et j'ai accidentellement mis un référentiel SVN 1.7 sur un ordinateur SVN 1.6.

SVN a dit que je devais effectuer une mise à niveau, mais la mise à niveau de SVN n'est disponible que dans la version 1.7. J'ai donc l'erreur "La commande n'existe pas" (la version 1.6 sait qu'elle devrait exister, car elle figure dans le message d'erreur !!!)

L'autre complication était que je ne pouvais pas passer à la version 1.7 sur cette machine en utilisant les commandes typiques apt-get (update/upgrade/install), car le fichier binaire n'est pas disponible pour Ubuntu 12.04 (LTS) par le biais des ressources PPA par défaut.

Pour passer à SVN 1.7 dans Ubuntu 12.04, vous devez ajouter un nouveau PPA. Les instructions peuvent être trouvées ici: Où puis-je trouver un binaire Subversion 1.7?
Remarque: recherchez plusieurs réponses dans le lien ci-dessus. Il existe un ppa disponible auprès de l’équipe SVN et, au moment de la rédaction de ce document, cette réponse n’était pas retenue

D'après ce que j'ai lu (et mon expérience personnelle), il est possible de synchroniser des projets SVN et Git sur des machines utilisant Dropbox, même sur des systèmes d'exploitation. Cependant, ce n'est probablement pas une bonne idée, et le changement de version de SVN m'a causé de gros problèmes. Maintenant, plusieurs de mes fichiers suivis ont été écrasés dans le projet et je dois passer par un processus compliqué consistant à extraire à nouveau le projet entier et à synchroniser manuellement les fichiers non versionnés. Les fichiers écrasés ont été remplacés par des fichiers vierges portant le nom d'origine, mais aucun contenu (et ils semblent à la version la plus récente de SVN, donc une annulation ne les annule pas).

Oui, je sais que conserver des fichiers non versionnés n’est pas idéal, mais j’ai de très bonnes raisons de le faire.

0
geneorama

Il y a une petite torsion. Vous dites que vous essayez svn update mais le code indique svn upgrade qui échoue, puis vous dites "donc j'ai essayé svn upgrade".

Mon instinct dit que vous avez une copie de travail sur la version 1.7 copiée quelque part et que la version 1.6 de Subversion ne peut pas s'en accommoder. La solution la plus simple consisterait à svn checkout une nouvelle copie de travail à partir de repository.

Si vous avez vraiment besoin de rétrograder votre copie de travail de 1,7 à 1,6, alors vous avez un problème , j'ai bien peur.

APR est une bibliothèque à usage général développée pour le serveur HTTP Apache, mais elle est utilisée par tous les programmes Subversion. Par conséquent, vous devez l'installer afin de créer tout logiciel Subversion. libapache-svn est une question différente.

1
Johannes