Come effettuare il checkout di una specifica revisione di Subversion dalla riga di comando?


Risposte:



313

O

svn checkout url://repository/path@1234

o

svn checkout -r 1234 url://repository/path

3
Ho dovuto rimuovere lo spazio dopo -r, quindi "-r1234" ha funzionato per me.
Elia Lofgren,

257

Qualche motivo per usare TortoiseProc invece della normale riga di comando svn?

Vorrei usare:

svn checkout svn://somepath@1234 working-directory

(per ottenere la revisione 1234)


36

Non utilizzare mai TortoiseProc.exe come client Subversion da riga di comando! TortoiseProc deve essere utilizzato solo per automatizzare la GUI di TortoiseSVN. Vedi la nota nel Manuale di TortoiseSVN :

Ricordare che TortoiseSVN è un client GUI e questa guida di automazione mostra come far apparire le finestre di dialogo TortoiseSVN per raccogliere l'input dell'utente. Se si desidera scrivere uno script che non richiede input, è necessario utilizzare invece il client della riga di comando ufficiale di Subversion.

Utilizzare il client svn.exe della riga di comando di Subversion . Con il client della riga di comando, puoi farlo

Puoi notare che con svn checkoute svn exportpuoi inserire il numero REV come --revision REVargomento e come @REVURL finale. Il primo si chiama revisione operativa e il secondo si chiama revisione pegging. Leggi SVNBook per ulteriori informazioni sul concetto di pegging e revisioni operative .


8

svn checkout per la revisione in cui il repository si trova su un altro server

Utilizzare il svn logcomando per scoprire quali revisioni sono disponibili:

svn log

Che stampa:

------------------------------------------------------------------------
r762 | machines | 2012-12-02 13:00:16 -0500 (Sun, 02 Dec 2012) | 2 lines

------------------------------------------------------------------------
r761 | machines | 2012-12-02 12:59:40 -0500 (Sun, 02 Dec 2012) | 2 lines

Nota il numero r761. Ecco la descrizione del comando:

svn export http://url-to-your-file@761 /tmp/filename

Ho usato questo comando specificamente:

svn export svn+ssh://machines@mywebsite.com/home1/oct/calc/calcFeatures.m@761 calcFeatures.m

Ciò fa sì che la revisione 761 calcFeatures.m venga estratta nella directory corrente.


6

Credo che la sintassi sia questa /rev:<revisionNumber>

La documentazione per questo può essere trovata qui


3

Potresti provare

TortoiseProc.exe /command:checkout /rev:1234

per ottenere la revisione 1234.

Non sono sicuro al 100% che l' /revopzione sia compatibile checkout, ma ho avuto l'idea da alcuni documenti di TortoiseProc .


2

Sembra che tu possa usare il browser del repository. Fai clic sul pulsante di revisione in alto a destra e modificalo nella revisione desiderata. Quindi fai clic con il pulsante destro del mouse sul file nel browser e usa "Copia su copia funzionante ...", ma modifica il nome file che verrà estratto, per evitare uno scontro.


1

Dovrai usare svn direttamente:

svn checkout URL[@REV]... [PATH]

e

svn help co

ti dà un po 'più di aiuto.


2
per quello che vedo, penso che un esempio possa essere d'aiuto. includi o non includi le parentesi? che dire di 3 periodi? che dire dello spazio dopo i 3 periodi? Quali personaggi sono letterali e quali sono i segnaposto e quali sono i caratteri aggiunti per i segnaposto?
ahnbizcad,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.