web-dev-qa-db-fra.com

Comment déterminer la version de mise en page de la copie de travail SVN?

Par exemple, le client SVN 1.5 a une disposition pour les copies de travail et le client SVN 1.6 a une disposition différente. Je comprends que la mise en page est automatiquement mise à jour lorsqu'elle est touchée par un nouveau client.

Si j'ai une copie de travail sur mon système, comment puis-je trouver la version de la mise en page qu'il utilise?

69
William Leara

Si .svn/format existe, puis lisez le nombre qu'il contient:

  • La version 7 est SVN 1.3
  • La version 8 est SVN 1.4
  • La version 9 est SVN 1.5

Si .svn/format n'existe pas alors le numéro de version est sur la première ligne dans .svn/entries:

  • La version 10 est SVN 1.6
  • La version 12 est SVN 1.7

Subversion 1.6 a été le premier à ne pas utiliser .svn/format. La version 7 et les versions antérieures utilisaient le langage XML .svn/entries fichier, les versions plus récentes utilisent un format de fichier moins verbeux.

Depuis Subversion 1.7, le numéro de version est stocké dans le .svn/wc.db Base de données SQLite dans le champ "version_utilisateur". Donc même si .svn/format est transféré à la version 12, la version au format réel est 29 et les futures versions pourraient ne pas être mises à jour .svn/format plus. Pour obtenir le numéro de version auprès de .svn/wc.db il existe deux méthodes:

  1. si tu as sqlite3 sur votre chemin, sqlite3 .svn/wc.db "PRAGMA user_version"
  2. si vous n'avez pas sqlite3 sur votre chemin, ouvrez .svn/wc.db dans un éditeur hexadécimal et lire le DWORD à l'offset 0x3c

Tous les numéros de version des formats sont décrits dans wc.h ainsi que les numéros de version des versions respectives de Subversion.

123
Filip Navara

De la question Stack Overflow Découvrez la version de copie de travail SVN (1.7 ou 1.8):

On peut utiliser sqlite3 .svn/wc.db "PRAGMA user_version" sur SVN 1.7 ou version ultérieure (ou od -An -j63 -N1 -t dC .svn/wc.db si vous ne disposez que des bibliothèques SQLite 3. , YMMV).

11
user3090766