Question

Nous essayons de garder le « svn: mergeinfo » propriété sur le dossier de la branche racine. Cependant, nous continuons à le voir se glisser dans les sous-dossiers. Nous avons été en mesure d'identifier les causes possibles:

  1. Déplacement d'un dossier dans le navigateur repo
  2. Déplacement et / ou renommer des paquets dans IntelliJ
  3. Utilisation d'anciens clients svn

Quelqu'un peut-il fournir une liste de choses que nous ne devrions pas faire afin d'éviter la création de ces propriétés par accident?

Les outils que nous utilisons sont IntelliJ 8 (bientôt 9), Ankh, TortoiseSVN et SlikSvn.

Était-ce utile?

La solution 2

Nous avons écrit un crochet SVN / déclencheur qui rejette simplement commits svn: propriétés sur la non-tronc. On n'a jamais regardé en arrière.

Autres conseils

Malheureusement, les anciens clients svn font tout cela, et tous les outils qui sont basés sur ces anciennes versions de svn sont également cassés. La seule façon de résoudre ce problème est de supprimer le svn créé: mergeinfo entrées avant qu'ils ne soient commis. Étant donné que la plupart des gens ne sont pas conscients qu'ils sont créés, alors la seule façon de faire respecter un crochet qui est pre-commit, ou tout simplement faire:

svn propdel --recursive svn:mergeinfo $ROOT/*

pour les nettoyer de temps en temps. Soyez prudent lorsque vous faites cela, car il détruira toute trace de fusions partielles que vous Vous fait, alors vous devriez vraiment le faire que si vous ne faites pas vraiment des fusions partielles. Le questionneur ne constitue pas et ne pouvons-nous dans notre environnement.

Le problème est résolu dans les nouveaux clients svn, de sorte que le problème devrait mourir lentement, mais cela pourrait prendre un certain temps avant que tous les outils dans votre flux de travail sont remplacés.

D'après une autre réponse à cette question, une explication rapide de ce qui cause le problème. Lorsque vous faites un mouvement de copie de travail ou de supprimer des clients svn de plus de 1.5.5 ont créé une fausse svn: entrée mergeinfo. Ceci est résolu dans svn 1.5.5 .

Je ne peux pas fournir une telle liste. Je vous recommande d'utiliser le crochet svn qui sera log action de l'utilisateur qui mène à un dossier changement de la propriété et soit un avertissement ou de rejeter commettras, tout ce qui est approprié en fonction de votre flux de travail.

Effectuer des fusions sur les sous-dossiers ou des fichiers individuels provoque cela, et devraient la cause, car il doit enregistrer des informations de fusion.

La meilleure façon est d'effectuer vos fusions au niveau principal, et en cas de besoin pour appliquer sélectivement, annuler les modifications que vous ne souhaitez pas fusionner, puis commettras.

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