svnsync ne fonctionne pas: revprop changement bloqué par le crochet avant revprop changement

StackOverflow https://stackoverflow.com/questions/3545526

  •  30-09-2019
  •  | 
  •  

Question

Je suis en train de copier un référentiel utilisé en utilisant svnsync (je suis en train de faire de cette façon afin d'assurer une utilisation optimale de mon dépôt aussi longtemps que sa machine fonctionne) mais il ne semble pas fonctionner.

J'ai deux machines (je l'ai changé les noms, mais pas les autres infos)

  • INITIAL: Linux personnalisée avec Subversion 1.4.5 (r25188) (tel que rapporté par svnadmin). A partir de cette machine, je suis en train de synchroniser sur un référentiel appelé SOURCE. Ce référentiel est accessible en utilisant le protocole http, et un utilisateur svnsync a été créé. En SOURCE/hooks, un seul fichier exécutable existe:. pre-revprops-change
  • FINAL: Ubuntu avec Subversion 1.6.6 (r40053) (tel que rapporté par svnadmin). Sur cette machine, je synchroniser sur un référentiel appelé svn16. Ce référentiel est accessible en utilisant le protocole http, et un utilisateur svnsync a été créé. Dans svn16/hooks, les fichiers exécutables sont pre-revprop-change et start-commit. Sur cette machine, dav_svn.conf contient SVNParentPath /var/svn directive, ce qui rend tous les référentiels accessibles sous http: // FINAL / svn

J'ai assurais URL et login / passwd sont corrects en ouvrant chaque URL du référentiel dans mon navigateur et l'émission des boîtes de dialogue d'authentification, qui semblait toujours au travail.

Je suis en train d'exécuter la commande suivante

svnsync initialize http://FINAL/svn/svn16 http://INITIAL/SOURCE

Mais il finit toujours par montrer

Authentication realm: <http://FINAL:80> All Subversion Repositories hosted on FINAL
Password for 'ubunut-user':
Authentication realm: <http://FINAL.fr:80> All Subversion Repositories hosted on FINAL
Username: svnsync
Password for 'svnsync':
svnsync: DAV request failed; it's possible that the repository's pre-revprop-change hook either failed or is non-existent
svnsync: At least one property change failed; repository is unchanged
svnsync: Error setting property 'sync-lock':
Revprop change blocked by pre-revprop-change hook (exit code 255) with no output.

Je crois qu'il ya une sorte de problème de configuration somewhere§. Mais quoi ? Et où ? Je suis arrivé à mes limites, et le web semble d'aucune aide ici, comme les divers documents que j'ai vu proposer par tout l'univers est fait exécutable crochets une solution efficace (ce qu'il est pas dans mon cas).

Était-ce utile?

La solution

que j'étais Turns plus bête que stupide.

Dans un tel cas d'erreur, la meilleure façon de s'assurer que tout fonctionne correctement est en invoquant divers crochets à la main.

Il a révélé mon crochet pre-revprop-change a été mal écrit avec

"#!/bin/sh"
exit 0

De toute évidence, la suppression du " a résolu le problème.

Autres conseils

Juste une petite note pour éviter erreur très souvent.

Dans le cas d'une telle erreur soit d'abord que pré-revprops changement fichier est exécutable. Sinon, exécutez:

chmod +x $DEST_SVN_REPO/hooks/pre-revprops-change,

$ DEST_SVN_REPO -. Chemin de référentiel de destination

voir ici: https://svn.apache.org/repos/asf/subversion /trunk/notes/svnsync.txt

est échoué config de destination. la phase INIT (copie des attributs) doit être fait. script à l'intérieur pré-revprops changement, vous devez le nom d'utilisateur de code autorisé à mettre à jour. autrement destination sera endommagé par les utilisateurs. svn ne peut pas fonctionner en tant que nœuds actifs actifs. généralement vous le script configure crochet pour empêcher toute modification par les utilisateurs. ils devraient avoir accès que reaad a.

aller généralement super service web. il est hors de ce sujet.

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