2009-04-29 10 views
7

Stiamo usando Subversion per tenere traccia del nostro codice. Come parte del processo di compilazione, alcuni file AssemblyInfo.cs vengono temporaneamente modificati dallo script di build e, una volta completata la build, vengono ripristinati (anche dallo script di build). Tuttavia, uno dei nostri sviluppatori ottenere questo messaggio quando il revert viene tentata:Subversion: Ottenere "Il client è troppo vecchio" anche se tutti gli sviluppatori stanno eseguendo la stessa versione di svn

Il client è troppo vecchio per lavorare con copia di lavoro 'percorso'. È necessario ottenere un client Subversion più recente o eseguire il downgrade di questa copia di lavoro.

Tutti eseguiamo la stessa versione di Subversion (1.5.1). L'unica differenza tra le impostazioni dello sviluppatore è che l'utente che ha il problema sta usando una versione successiva di TortoiseSVN (1.6.0, a differenza di 1.5.x per gli altri), e abbiamo eseguito Subversion 1.5.1 per tutto il tempo repository è esistito.

Avete qualche suggerimento su quale potrebbe essere il problema?

+0

Stai condividendo la stessa copia di lavoro? Il suo WC dovrebbe essere felicemente salito come un 1.6 WC con il suo 1.6 client. – hometoast

risposta

14

Ogni volta che un client di subversion tocca una copia di lavoro, la prima cosa che fa è aggiornare silenziosamente quella copia funzionante alla sua versione.

TortoiseSVN avrà eseguito questa operazione, lasciando gli altri client di subversion in grado di leggere in modo affidabile la copia di lavoro.

Questo è vero per tutti i client di subversion in tutte le versioni (finora). Commandline, Tortoise, subclipse, ankh, rapidsvn - tutti si comportano allo stesso modo.

C'è uno script python per eseguire il downgrade di una copia di lavoro, oppure puoi semplicemente scartarlo e ricominciare con un nuovo checkout. Vedere compatibility section of the release notes.

Tortoise segue generalmente il numero di versione principale del client di subversion che utilizza.

Edit:

Nel tuo caso si sta utilizzando 2 clienti - tartaruga e la riga di comando nello script di build. Lo script di build non sarà in grado di funzionare fino a quando non verrà aggiornato alla versione più recente.

Abbiamo questo problema noi stessi.

+0

Ma nel nostro caso è il contrario; l'unico cliente che si lamenta è quello con la versione successiva. –

+0

Is TortoiseSVN 1.6 lamentarsi, o è un client SVN anoterizzato gestito dallo stesso utente con TortoiseSVN 1.6 lamentandosi? –

+0

Non importa il mio commento; pensando all'indietro. Hai perfettamente ragione nel fatto che due clienti sono in uso; sia un client della riga di comando (1.5.1) che uno in Tortoise (1.6.x). Sono abbastanza sicuro che questo è il problema. –

3

TortoiseSVN 1.6 utilizza una versione più recente del client di sovversione di 1,5. Questo è probabilmente ciò che sta causando il tuo errore.

Un'altra possibilità è che lo script di build stia utilizzando un client diverso.

+0

+1; in generale, controlla sempre la versione utilizzata nei tuoi binari di Subversion, eventuali strumenti di supporto (come TortoiseSVN) e eventuali plug-in del tuo IDE e assicurati di poter ottenere le versioni corrispondenti prima di aggiornare qualsiasi cosa – Rob

+0

Grazie per quello (essendo investigato proprio adesso). Penso che l'errore potrebbe essere che l'utente ha supposto che Tortoise stia semplicemente "avvolgendo" il client svn installato. –

+0

buona chiamata sui diversi strumenti utilizzati. Cercando di ripristinare (per esempio) VisualSVN 1.5 non funzionerà se estratto da Tortoise 1.6+ – hometoast

Problemi correlati