2017-03-03 4 views
-2

Ich möchte ein Git Reposetory in ein Quecksilber konvertieren.Wie man ein git Repo in ein hg Repo umwandelt

Ich versuche zuerst: "hg Klon git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git", aber der Befehl wurde abgebrochen und die Grund ist, dass der Link kein hg-Repository zu sein scheint. davon Stattdessen verwendet i git clone ...

Aber ich brauche .hg und nicht .git becouse danach i anwenden müssen hg Befehle ...

Also, wie kann ich vorgehen, dies zu konvertieren .git? Ich las über hg konvertieren, aber ich habe nicht die Art verstanden, es zu verwenden. Ich würde mich über jede Hilfe freuen!

Grüße,

Belhadj

Antwort

1

Hinweis: Diese Antwort scheint nur mit einem lokalen Repository zu arbeiten; Sie müssen das Repository mit git klonen, bevor Sie es verwenden, und dann hg convert auf dem geklonten git-Repository ausführen, um ein Mercurial zu erhalten.

Kein Versionskontrollsystem kann die Repositorys anderer Benutzer lesen, da sie unterschiedliche Formate verwenden. Es gibt eine Reihe von Tools für die Konvertierung zwischen ihnen; Einer von ihnen, Mercurial’s Convert extension, wird mit Mercurial ausgeliefert und könnte am einfachsten zu verwenden sein.

+0

Vielen Dank für die Antwort. Können Sie mir ein Beispiel mit dieser Convert-Erweiterung geben? – Belhadj

+0

Ich bin nicht; anscheinend bekomme ich das, weil ich der Dokumentation vertraue. Ich konnte nichts versuchen, das nicht nur sagt 'sieht nicht wie ein Git Repository 'aus. Jeder empfiehlt die Drittanbieter-Erweiterung [Hg-Git] (http://hg-git.github.io/); Sobald Sie installiert haben, funktioniert Ihre vorgeschlagene Befehlszeile einwandfrei. –

1

Aktivieren Sie die Konvertierungserweiterung. Sie haben nicht Betriebssystem erwähnen:

  1. TortoiseHg Wenn verwenden, gehen Sie zu File, Settings, Extensions und schalten Sie convert. Fahren Sie mit Schritt 4.
  2. Andernfalls bearbeiten Sie die Mercurial-Konfigurationsdatei:
    (Windows) Mercurial.ini
    (Linux) .hgrc
  3. Fügen Sie den folgenden Abschnitt wird die Erweiterung zu ermöglichen.

    [extensions] 
    convert = 
    
  4. Run hg convert <path_to_git_repo> <path_to_desired_hg_repo>

Beachten Sie auch die hggit Erweiterung, falls aktiviert, von einer Git-Repository zu einem lokalen Mercurial Repository klonen. Sie können in Mercurial arbeiten und dann zurück zum Git-Repository gehen. Ihr Befehlsbeispiel sollte mit hggit aktiviert funktionieren.

1

Wenn Sie mit Git Repo von Mercurial handeln wollen, kann ich vorschlagen, Sie verwenden Hg Git Plugin. Es gibt eine Dokumentation, aber kurz gesagt - man muss nur, dass Repo-Klon, zeigen Sie dann ~/.hgrc es über

[extensions] 
hggit = ~/.hg-ext/hg-git/hggit 

Und dann können Sie git Repositories hg klonen.

hg clone git://github.com/schacon/some-repo.git 

Natürlich können Sie mit https klonen oder zu lokal.