ProblemaCome git-svn clonare le ultime n revisioni da un repository Subversion?
Come si crea una copia con git-svn da un repository Subversion, ad esempio, come fai a tirare solo le ultime tre revisioni?
Il comando git clone
può ottenere le ultime n revisioni da un repository Git se si utilizza l'opzione --depth
, ad esempio si ottiene una copia superficiale del repository. Esempio:
git clone --depth 3 git://some/repo myshallowcopyrepo
Esiste un'opzione simile per git-svn?
mie scoperte finora
Finora ho trovato solo l'opzione -rN
dove N
è la revisione di tirare. Esempio:
git svn clone -rN svn://some/repo
Secondo la documentazione v'è la possibilità di utilizzare -r$REVNUMBER:HEAD
. Ho provato quanto segue per ottenere le ultime 3 revisioni che hanno restituito un messaggio di errore.
$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
Così ho sostituito HEAD~3
con il numero effettivo della terza, ma ultima revisione 534. Che ha funzionato, ma che mi richiede prima capire il numero di revisione del terzo, ma dell'ultimo commit.
$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
Documentazione
cosa fa '-s' fai qui? –
Rispondere alla mia stessa domanda: '-s è per --stdlayout che presume il layout consigliato da svn per tag, trunk e rami. (ma non ha funzionato per me) –
Quanto sarebbe difficile implementare' - -depth' per 'git svn', dal momento che il supporto è già lì. E deve già scoprire l'ultima versione del server? –