Question

Mon entreprise effectue une migration de dépôt SVN et je voudrais éviter le chevauchement des numéros de révision entre les deux référentiels (qui sont tous les deux actifs au moment).

Mon exigence est de forcer la révision du nouveau référentiel à un numéro de révision spécifique (par exemple: 100.000)

.

En analysant le dépôt FSFS Je suis venu dans le fichier « db / courant », qui sonne comme le bon endroit où changer le numéro de dépôt.

Quelqu'un at-il une expérience avec cette procédure? Je voudrais éviter des choses étranges qui se produisent à l'avenir!

PS: Je comprends que je peux créer « 100.000 » factice engage dans le référentiel. S'il vous plaît partager votre expérience avec cette procédure et les éventuels problèmes de performances du référentiel pendant et après la prodecure

PS3: Je comprends que ce pourrait être une bonne idée d'avoir tout le monde commettent des copies de travail avant la procédure. Ce n'est pas un problème pour nous (le nouveau référentiel a très utilisateurs limités en ce moment). Cependant, si vous avez une expérience avec ce ou des exigences similaires, s'il vous plaît partager! :)

PS3: Je comprends ce n'est pas une procédure standard SVN et beaucoup pourraient opposer à l'exigence elle-même. Supposons que mon exigence est son! :)

Était-ce utile?

La solution

http://subversion.tigris.org/ds/viewMessage .Ne dsForumId = 1065 & dsMessageId = 940194 :

  

Q: Y at-il un moyen d'augmenter artificiellement la révision du référentiel   numéro dans la subversion?

     

A: La seule façon de le faire serait de commettre un certain nombre de révisions fictives.

Autres conseils

Tout d'abord, ne vous embêtez pas essayer de branler cela. Si vous devez fusionner les 2, vous pouvez utiliser dump / charge pour mettre le nouveau au-dessus des anciens numéros et de révision seront traitées pour vous. Donc, à moins que vous devez savoir ce que le numéro de révision est une version particulière (pour peut-être externals ou balises), alors vous devez vous inquiétez pas du tout.

Si vous pouvez travailler avec l'outil, est toujours mieux que de trouver plus tard ce pack svnsync ou svnadmin, par exemple, ne fonctionnera pas avec votre dépôt modifié.

OK, donc si vous voulez toujours le faire, mettre à jour le dernier numéro de révision dans revprop 0 et le fichier db / courant et vous devriez être ok.

Je ne pense pas que vous trouverez quelqu'un qui a une expérience directe avec cette approche bien!

Un moyen facile de faire des révisions factices ...

Comme autant de fois que nécessaire, répéter:

svnmucc propset dummy_prop 0 -m "increases revision" https://svn/repo/ --username me --password x7G_5-u1,W

Note:

  • La valeur « 0 » ne doit pas être différent d'un commettras à la suivant. Vous pouvez répéter la même commande.
  • Change le référentiel directement, sans une copie de la caisse ou de travail.
  • Modifie le dossier racine (référencé par la fuite / après "... svn / repo"). Ainsi, il peut même être effectué sur un dépôt de fresh'n'empty.
  • Les modifications ne une propriété d'un dossier. Ceux-ci existent seulement pour SVN. Donc, si vous passez commande ou mise à jour, les applications svn-pas au courant (comme votre système d'exploitation) ne remarquerez aucun changement sur le dossier lui-même. Seulement dans le sous-dossier svn, où ces propriétés sont stockées, les fichiers sont modifiés.
  • svnmucc fait partie des outils de Subversion officiels, au moins 1,8, peut-être plus tôt, voir aussi: http://svnbook.red-bean.com/en/1.8/svn.ref.svnmucc.re.html
  • Bien sûr, le mot de passe est juste un exemple, ne vous inquiétez pas que je divulgué des pouvoirs réels. : -)

J'espère que cela sauve les autres à quelques pas de la recherche.

Avec Subversion 1.7 vous pouvez utiliser le svndumpfilter outil pour filtrer les commits indésirables à partir d'un fichier de vidage créé par svnadmin dump:

http: // svnbook.red-bean.com/en/1.7/svn.reposadmin.maint.html#svn.reposadmin.maint.filtering

A partir de cette page:

  

[svndumpfilter] agit comme un filtre à base de chemin de flux de décharge du référentiel

Donc cela peut être utilisé pour supprimer valider les données de chemins particuliers, ce qui est utile dans certains scénarios de gestion des prises en pension (mais pas tous); en particulier, où engage une prise en pension sont regroupés par dossiers (comme un identificateur de version), svndumpfilter aider à réduire la taille des prises en pension, ce qui vous permet de supprimer des dossiers indésirables.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top