ProblemWie git-svn die letzten n Revisionen aus einem Subversion-Repository klonen?
Wie man von einem Subversion-Repository eine flache Kopie mit git-svn erstellen zu tun, zum Beispiel Wie ziehst du nur die letzten drei Revisionen? Der git clone
Befehl kann die letzten n Revisionen von einem Git-Repository abrufen, wenn Sie die Option --depth
verwenden. Beispiel:
git clone --depth 3 git://some/repo myshallowcopyrepo
Gibt es eine ähnliche Option für git-svn?
Meine Entdeckungen bisher
Bisher habe ich fand nur die -rN
Option wo N
die Revision zu ziehen ist. Beispiel:
git svn clone -rN svn://some/repo
Gemäß der Dokumentation gibt es die Möglichkeit -r$REVNUMBER:HEAD
zu verwenden. Ich versuchte Folgendes, um die letzten 3 Revisionen zu erhalten, die eine Fehlermeldung zurückgaben. So
$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
I ersetzt HEAD~3
mit der tatsächlichen Anzahl der dritten aber letzter Revision 534. Das funktionierte, aber das erfordert mich zuerst die Revisionsnummer der dritten herauszufinden, aber zuletzt zu begehen.
$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
Dokumentation
was tut '-s' hier? –
Beantworten Sie meine eigene Frage: '-s ist für --stdlayout, die das SVN empfohlene Layout für Tags, Stamm und Zweige vorausgesetzt. (aber nicht für mich arbeiten) –
Wie schwer wäre es zu implementieren' - -depth für 'git svn', da die Unterstützung schon da ist. Und es muss schon die neueste Version vom Server herausfinden? –