2 Stimmen

Wie kann ich zu Mercurial konvertieren, ohne die zusätzliche Zeile "committer:" im Protokoll?

Die Konvertierung eines Repositorys von Git zu Mercurial führt zu einer Menge falscher "committer:"-Zeilen in jeder Logmeldung. Ich kann nicht herausfinden, wie ich diese Zeilen nicht erzeugen kann. Wenn ich ein SVN-Repository konvertiere, werden diese Zeilen nicht hinzugefügt. Das scheint nur eine Sache von Git zu sein.

Dies ist leicht zu testen. Hier ist die Vorgehensweise unter Linux:

mkdir repo && cd repo
git init
echo hello > foo.txt
git add foo.txt
git commit -m"Initial import"
cd ..
hg convert repo
cd repo-hg
hg log -v

Das Protokoll wird etwa so lauten:

changeset:   0:077135a87f99
tag:         tip
user:        Your Name <you@example.com>
date:        Mon Jan 01 12:04:46 2001 
files:       foo.txt
description:
Initial import

committer: Your Name <you@example.com>

Wie kann ich also diese überflüssige "committer:"-Zeile vermeiden?

5voto

Dustin Punkte 85400

Es ist eine Git-spezifische Sache und hg convert fügt dies hinzu, weil hg keine Möglichkeit hat, diese Information darzustellen. In Git müssen der Committer und der Autor nicht dieselbe Person sein (eine wirklich großartige Funktion von Git, IMO).

Es scheint keine spezifische Dokumentation dazu zu geben, und es ist keine konfigurierbare Funktion. Ich bin sicher, sie würden einen Patch gerne akzeptieren :)

0 Stimmen

Sie haben Recht. Was mich verwirrt hat, war, dass "hg view" verschiedene Committer- und Author-Felder sowie "committer:" im Log anzeigt. Das Testen mit "hg commit -u" zeigte, dass hgk das Log tatsächlich nach den fehlenden "committer"-Metadaten analysiert, später habe ich mir den Quelltext von hgk angesehen und das ist tatsächlich das, was es tut. Der Fehler ist, dass wenn Committer und Autor gleich sind, die committer: Zeile wahrscheinlich nicht hinzugefügt werden sollte.

0 Stimmen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X