So habe ich mich entschieden, das svn2git Werkzeug nach einer soliden Empfehlung zu verwenden. Um das Repository zu migrieren, brauche ich die authors-Datei und die rules-Datei zusammen mit dem Repository selbst. Ich habe alle drei zusammen gestellt und unter ein Verzeichnis gestellt, das ich vorerst myRepository_test nenne. Ich erwarte, dass mein neues Git-Repository nach der Migration hier sein wird.svn2git Migration: Regeln
Hier ist die Repository-Struktur I haben derzeit:
- myRepository
-- myRepository.release
-- myRepository.mapping
-- myRepository.base
-- ..
Insgesamt habe ich rund 30 Projekte hier.
Hiermit teile ich meine Dateien gemeinsam nutzen, die verwendet wird:
authormap.txt:
egent = Emma Gent <[email protected]>
gstar = Gabriel Star <[email protected]>
.
.
Im Moment habe ich nur für 2 Projekte versuchen wollte, so:
myRepository.Rules:
create repository myRepository
end repository
# main history
match /trunk/myRepository/myRepository.release/
repository myRepository
branch master
end match
match /trunk/myRepository/myRepository.mapping/
repository myRepository
branch master
end match
# Ignore everything else
match/
end match
, die den endgültigen Befehl macht:
./svn-all-fast-export --identity-map authormap.txt --rules myRepository.rules --add-metadata http://address/svn/myRepository
die als endet:
Loading rules from: "myRepository.rules"
Loading rules from "myRepository.rules"
Could not read the rules file: myRepository.rules
Aborted (core dumped)
ich über den Inhalt der Regeldatei nicht ganz sicher bin, wäre schön, wenn mir jemand bezüglich helfen könnte, dass .
Vielen Dank im Voraus.
Oh ja, diese Ordner (Mapping, Freigabe usw.) sollen getrennte Unterverzeichnisse unter dem Repository sein, danke für den Fang. Also gut, Hinzufügen von 'Präfix \ 1'. Punkt in Bezug auf die '.' auch, getan. Schließlich führe ich das Skript aus dem gleichen Verzeichnis, in dem meine Regeln und Author-Dateien sind. Sollte ich aus dem Ordner "svn2git" starten, in dem sich das Skript ursprünglich befindet (wie es dort installiert ist)? –
Ich habe deine letzten zwei Sätze nicht ganz bekommen. Aber Sie müssen 'svn2git' von dort ausführen, wo Sie das resultierende Git-Repository/-ies finden möchten. Für jedes Repository, das Sie in der Regeldatei konfiguriert haben, haben Sie ein wahrscheinlich benanntes Unterverzeichnis mit dem dort erstellten Git-Repository. Die Argumente für "--rules" und "--identity-map" sind relative Pfade zu den Dateien, von denen aus Sie das Programm ausführen. Wenn Sie es also aus dem Verzeichnis ausführen, in dem sich die Dateien befinden, haben Sie entweder einen Tippfehler im Dateinamen oder Sie haben keine Leseberechtigungen für die Datei. – Vampire
Ich tat es, diesmal gab es einen anderen Fehler. 'Erstellen neues Repository „MyRepository“ svn: Kann Datei nicht öffnen ‚http: // Adresse/svn/MyRepository/Format‘: Keine solche Datei oder das Verzeichnis repository' öffnen konnte nicht, warum es für das sieht '/ Format' sowieso? –