Tutorial - Änderungen einer einzelnen anderen Person zukommen lassen

GermanTutorialShareChange hat beschrieben, wie wir [:ChangeSet:Changesets] zwischen [:Repository:Repositories] austauschen können. Es gibt noch andere Möglichkeiten, Änderungen zwischen Repositories und Leuten auszutauschen. Häufig ist z.B. per Email.

Nachdem wir eine Änderung [:Commit:committed] haben, können wir sie in eine Datei [:Export:exportieren], und diese dann als Anhang jemandem anderen schicken.

Dazu gibt es das export-Kommando. Damit Mercurial weiß, was es exportieren soll, geben wir einen [:Tag:Tag], eine [:RevisionNumber:Revisionsnummer] oder eine [:ChangeSetID:Changeset ID] an. In unserem Fall wollen wir den [:Tip:Tip] exportieren. Vorausgesetzt, daß wir immer noch im my-hello-share Verzeichnis sind, können wir das so machen:

$ hg export tip
# HG changeset patch
# User mpm@selenic.com
# Node ID a58809af174d89a3afbbbb48008d34deb30d8574
# Parent  82e55d328c8ca4ee16520036c0aaace03a5beb65
Express great joy at existence of Mercurial

diff -r 82e55d328c8c -r a58809af174d hello.c
--- a/hello.c   Fri Aug 26 08:21:28 2005
+++ b/hello.c   Fri Aug 26 08:26:28 2005
@@ -12,5 +12,6 @@
 int main(int argc, char **argv)
 {
        printf("hello, world!\n");
+       printf("sure am glad I'm using Mercurial!\n");
        return 0;
 }

export zeigt dabei die Änderung einfach an, d.h. üblicherweise leiten wir die Ausgabe in eine Datei um. Diese Datei ist dann eine [:PatchFile:Patchdatei] im [:UnifiedDiff:unified diff] Format mit ein paar Zusatzinformationen, damit Mercurial weiß, wie die Änderungen wieder zu [:Import:importieren] sind.

Der Empfänger unserer EMail kann dann den Anhang speichern und mit dem import-Kommando die Changesets in sein Repository einpflegen.

Nehmen wir jetzt an, daß wir der Empfänger einer Email sind und lernen auf GermanTutorialMerge, wie man mehrere Änderungen zusammenfügt.


CategoryTutorial