Domanda

Sto cercando di copiare un repository utilizzato utilizzando svnsync (sto facendo in questo modo al fine di garantire un uso ottimale del mio repository finché la sua macchina è in funzione), ma non sembra funzionare.

Ho due macchine (ho cambiato i nomi, ma non le altre informazioni)

  • INIZIALE: custom di Linux con Subversion 1.4.5 (r25188) (come riportato da svnadmin). Da questa macchina, sto cercando di sincronizzazione su un repository chiamato SOURCE. Questo repository è possibile accedere utilizzando il protocollo HTTP, e un utente svnsync è stato creato. In SOURCE/hooks, solo un file eseguibile esiste:. pre-revprops-change
  • FINALE: Ubuntu con Subversion 1.6.6 (r40053) (come riportato da svnadmin). Su questa macchina, io sincronizzare su un repository chiamato svn16. Questo repository è possibile accedere utilizzando il protocollo HTTP, e un utente svnsync è stato creato. In svn16/hooks, file eseguibili sono pre-revprop-change e start-commit. Su questa macchina, dav_svn.conf contiene SVNParentPath /var/svn direttiva, rendendo tutti i repository accessibile sotto http: // FINALE / svn

Ho assicurato URL e accesso / PWD sono corrette con l'apertura di ciascun URL del repository nel mio browser e l'emissione di finestre di dialogo di autenticazione, che sembravano sempre al lavoro.

Sto cercando di eseguire il seguente comando

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

Ma è sempre finiscono per mostrare

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.

Credo che ci sia un qualche tipo di problema di configurazione somewhere§. Ma cosa ? E dove ? Ho raggiunto i miei limiti, e il web sembra di nessun aiuto qui, come i vari documenti che ho visto Suggerisco di fare ganci eseguibile l'intero universo è una soluzione efficiente (cosa che non è nel mio caso).

È stato utile?

Soluzione

Si scopre che ero stupido di stupido.

In un tale caso di errore, il modo più semplice per garantire tutto funzioni correttamente è invocando vari ganci mano.

E 'rivelato il mio gancio pre-revprop-change è stato erroneamente scritto con

"#!/bin/sh"
exit 0

Ovviamente, rimuovendo il " risolto il problema.

Altri suggerimenti

Solo una piccola nota, per evitare molto spesso errore.

In caso di tale errore prima essere sicuri che pre-revprops-cambi il tempo del file è eseguibile. In caso contrario, eseguire:

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

dove $ DEST_SVN_REPO -. Percorso di repository di destinazione

vedere qui: https://svn.apache.org/repos/asf/subversion /trunk/notes/svnsync.txt

destinazione config è fallito. fase di INIT (la copia di attributi) deve essere fatto. All'interno pre-revprops cambio di script si dovrebbe codice nome utente permesso di aggiornamento. altrimenti destinazione sarà danneggiato dagli utenti. svn non può funzionare come nodi active-active. di solito si configurano gancio copione per impedire qualsiasi modifica da parte degli utenti. essi dovrebbero avere accesso solo Reaad ottenuto.

in generale vai al servizio web superutente. c'è questo è fuori discussione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top