3668
Comment:
|
3318
sync with english original.
|
Deletions are marked like this. | Additions are marked like this. |
Line 4: | Line 4: |
Voreingestellt nutzt Mercurial für Commits einen Usernamen der Form 'user@localhost'. Dieser ist of bedeutungslos. Es ist das beste eine richtige Email_Adress in `~/.hgrc` zu konfigurieren, in dem man folgende Zeilen hinzufügt: | Voreingestellt nutzt Mercurial für Commits einen Usernamen der Form 'user@localhost'. Dieser ist of bedeutungslos. Es ist das beste eine richtige Email_Adress in `~/.hgrc` (oder auf einem Windows-System {{{%USERPROFILE%\Mercurial.ini}}}) zu konfigurieren, in dem man folgende Zeilen hinzufügt: |
Line 52: | Line 52: |
Dies wird alle Dateien listen, die die nicht ignotiert werden mit de 'U'-Flag (unberkannt). Bearbeite Edit Deine .hgignore Datei bis nur die Dateien. die Du verfolgen willst nach Status gelistet werden. Du wist Deine .hgignore Datei auch verfolgen wollen! Aber Du wirst wahrscheinlich nicht Dateien verfolgen, die durch den Buld-Prozess erzeigt werden. Wenn Du zufrieden bist, setze Deine Dateien zum hinzufügen an und committe: |
Dies wird alle Dateien listen, die die nicht ignotiert werden mit de 'U'-Flag (unberkannt). Bearbeite Deine .hgignore Datei bis nur die Dateien. die Du verfolgen willst nach Status gelistet werden. Du wist Deine .hgignore Datei auch verfolgen wollen! Aber Du wirst wahrscheinlich nicht Dateien verfolgen, die durch den Build-Prozess erzeugt werden. Wenn Du zufrieden bist, setze Deine Dateien zum hinzufügen an und committe: |
Line 77: | Line 77: |
== Patches importieren == | |
Line 79: | Line 78: |
Schnell: {{{ $ patch < ../p/foo.patch $ hg addremove # Füge Dateien hinzu und lösche Dateien, # die von dem Patch hinzugefügt oder gelöscht wurden. $ hg commit }}} Schneller: {{{ $ patch < ../p/foo.patch $ hg commit `lsdiff -p1 ../p/foo.patch` }}} Am schnellsten: {{{ $ cat ../p/patchlist | xargs hg import -p1 -b ../p }}} |
this is a translated version of QuickStart. This is the german version.
Einen Usernamen setzen
Voreingestellt nutzt Mercurial für Commits einen Usernamen der Form 'user@localhost'. Dieser ist of bedeutungslos. Es ist das beste eine richtige Email_Adress in ~/.hgrc (oder auf einem Windows-System %USERPROFILE%\Mercurial.ini) zu konfigurieren, in dem man folgende Zeilen hinzufügt:
[ui] username = Author Name <email@address>
An einem existierenden Mercurial-Projekt arbeiten
Wenn Du eine URL hast für ein browsbares Projekt-Repository (zB: http://selenic.com/hg), kannst Du eine Kopie so holen:
$ hg clone http://selenic.com/hg
Dies erzeugt ein neues Verzeichnis das hg (voreingestellt) heisst, holt eine komplette Projekt-Historie und checkt das "tipmost" Changeset aus.
Ein neues Mercurial-Projekt einrichten
Du wirst damit anfangen wollen ein hg-Repository einzurichten:
$ cd projekt/ $ hg init # erzeugt .hg
Mercurial wird nach einer Datei namens [".hgignore"] im root-Verzeichnis Deines Repositories sehen, das eine Reihe von Regulären Ausdrücken beinhaltet, die in Dateipfaden ignoriert werden sollen:
syntax: glob *.orig *.rej *~ *.o tests/*.err syntax: regexp .*\#.*\#$
Teste Deine .hgignore Datei mit:
$ hg status # zeigt alle nicht-ignorierten Dateien
Dies wird alle Dateien listen, die die nicht ignotiert werden mit de 'U'-Flag (unberkannt). Bearbeite Deine .hgignore Datei bis nur die Dateien. die Du verfolgen willst nach Status gelistet werden. Du wist Deine .hgignore Datei auch verfolgen wollen! Aber Du wirst wahrscheinlich nicht Dateien verfolgen, die durch den Build-Prozess erzeugt werden. Wenn Du zufrieden bist, setze Deine Dateien zum hinzufügen an und committe:
$ hg add # füge diese 'unbekannten' Dateien hinzu $ hg commit # committe alle Änderungen, bearbeite Changelog-Eintrag
Branching und Merging
$ hg clone projekt projekt-work # erzeuge einen neuen Branch (Zweig) $ cd projekt-work $ <mache Änderungen> $ hg commit $ cd ../projekt $ hg pull ../projekt-work # hole die Changesets von projekt-work $ hg merge # merge den neuen tip (hinweis) von projekt-work in # (alte Versionen benutzen stattdessen "hg update -m") # das Arbeitsverzeichnis $ hg commit # committe alle Ergebnisse des Merge
Einen Patch exportieren
(mache Änderungen) $ hg commit $ hg export tip # exportiere den letzten Commit
Netzwerksupport
# hole vom primären Mercurial Repo foo$ hg clone http://selenic.com/hg/ foo$ cd hg # exportiere Dein aktuelles Repo via HTTP mit browsbarer Schnittstelle foo$ hg serve -n "Mein repo" -p 80 # pushe Änderungen zu einem entfernten Repo mit SSH foo$ hg push ssh://user@example.com/~/hg/ # merge Änderungen von einer Remotemaschine bar$ hg pull http://foo/ bar$ hg merge # merge Änderungen in Dein Arbeitsverzeichnis # Setze einen CGI-Server auf Deinem Webserver auf foo$ cp hgwebdir.cgi ~/public_html/hg/index.cgi foo$ emacs ~/public_html/hg/index.cgi # adjust the defaults