Ich weiß, dass diese Frage vor einiger Zeit beantwortet wurde, aber nachdem ich sie gelesen habe, kann es hilfreich sein, Beispiele für den spezifischen Befehl git svn branch hinzuzufügen und sie mit einem typischen Workflow in Beziehung zu setzen.
Wie kch geantwortet hat, benutze git svn branch
. Hier ist ein vollständiges Beispiel (beachten Sie das -n
für den Trockenlauf zu testende):
git svn branch -n -m "Branch for authentication bug" auth_bug
Wenn dies gut geht, antwortet der Server mit einer Antwort wie folgt:
Kopieren von https://scm-server.com/svn/portal/trunk unter r8914 nach https://scm-server.com/svn/portal/branches/auth_bug ...
Und ohne den -n
Schalter fügt der Server wahrscheinlich Folgendes hinzu:
Möglicher Verzweigungspunkt gefunden: https://scm-server.com/svn/portal/trunk => https://scm-server.com/portal/branches/auth_bug , 8914
Gefundener Zweig übergeordnet: (refs / remotes / auth_bug)
d731b1fa028d30d685fe260f5bb912cbf59e1971
Folgender Elternteil mit do_switch
Erfolgreich gefolgt von Elternteil r8915 = 6ed10c57afcec62e9077fbeed74a326eaa4863b8
(refs / remotes / auth_bug)
Das Beste daran ist, dass Sie jetzt einen lokalen Zweig basierend auf Ihrem Remote-Zweig wie folgt erstellen können:
git checkout -b local/auth_bug auth_bug
Was bedeutet "Check out und erstellen Sie einen lokalen Zweig mit dem Namen auth_bug
und lassen Sie ihn dem Remote-Zweig folgen (letzter Parameter)auth_bug
Testen Sie dcommit
mit --dry-run
( -n
), ob Ihr lokaler Zweig auf diesem Remote-Zweig funktioniert :
git svn dcommit -n
Der SVN-Server sollte mit dem neuen Filialnamen antworten:
Verpflichtung zu https://scm-server.com/svn/portal/branches/auth_bug ...