Von Subversion zu Git umziehen

Aus Tutorials
Zur Navigation springen Zur Suche springen

Noch in Bearbeitung


Voraussetzungen

Es wird ein Case-Sensitives-Dateisystem benötigt, weshalb Linux (auch in VM) notwendig ist.

Folgender Check

java -jar svn-migration-scripts.jar verify

liefert unter Windows nämlich folgende Warnung:

You appear to be running on a case-insensitive file-system. This is unsupported, and can result in data loss.

Siehe dazu auch https://bitbucket.org/atlassian/svn-migration-scripts/issues/1/case-insensitive-warning-on-windows-ntfs

Installation benötigter Tools

Java (OpenJDK 9)

sudo apt-get install openjdk-9-jdk openjdk-9-demo openjdk-9-doc openjdk-9-jre-headless openjdk-9-source 

Git

PPA-Repository

sudo add-apt-repository ppa:git-core/ppa

Pakete installieren

sudo apt-get update && sudo apt-get install git git-svn

Subversion

sudo apt-get install subversion

svn-migration-scripts

Download

https://bitbucket.org/atlassian/svn-migration-scripts/downloads/

Validation

Damit Subversion richtig erkannt wurde, war noch eine Änderung in ~/.bashrc notwendig:

vi ~/.bashrc

Und am Ende der Datei dann folgende Zeile hinzufügen:

export LANG=C

Danach sollte der Aufruf des folgenden Befehles

java -jar ~/GitMigration/svn-migration-scripts.jar verify

eine Ausgabe wie

svn-migration-scripts: using version 0.1.56bbc7f
Git: using version 2.16.2
Subversion: using version 1.9.7
git-svn: using version 2.16.2

erzeugen.

Autorendatei erstellen

java -jar ~/svn-migration-scripts.jar authors https://<svn-repo>/<project> <user> <password> > authors.txt

SVN Repository klonen

git svn clone --username <svn user> --trunk=/trunk --branches=/release --branches=/refactoring --tags=/tags --authors-file=authors.txt https://<svn-repo>/<project> <git-repo-name>

Links

https://git-scm.com/book/de/v1/Git-und-andere-Versionsverwaltungen-Zu-Git-umziehen

https://blog.seibert-media.net/blog/2014/05/15/migration-von-subversion-zu-git-ueberblick/

http://blog.seibert-media.net/blog/2014/05/16/migration-von-subversion-zu-git-vorbereitungen/

http://blog.seibert-media.net/blog/2014/07/07/migration-von-subversion-zu-git-die-konvertierung/

http://blog.seibert-media.net/blog/2014/07/09/migration-von-subversion-zu-git-die-synchronisation/

https://blog.seibert-media.net/blog/2014/08/22/migration-von-subversion-zu-git-das-git-repository-teilen/


Zurück zu Git Server