[linux-l] Mercurial Pull-Problem

Volker Grabsch v at njh.eu
Mo Jul 22 11:21:27 CEST 2013


Olaf Radicke schrieb:
> Ich muss beruflich z.T. mit Mercurial arbeiten. Da habe ich aktuell ein
> merkwürdiges Phänomen:

Ich habe früher viel mit Mercurial gemacht (und davor mit
Darcs), bin aber letztendlich bei Git hängen geblieben.

Dennoch kann ich dich gut verstehen: Ich musste neulich
mit Bazaar (bzr) arbeiten, und das war auch nicht so
prickelnd. :-)

> Ich habe zwei Repos. In der Einen arbeite ich und pushe die Änderungen hoch.
> Wenn ich im anderem Repos dann ein pull mache, heißt es, es gäbe keine
> Updates. Schaue ich nach, fehlen mir auch die Änderungen der anderen Repos.
> Lösche ich das zweite Repos und clone es von neuen, bekomme ich die Änderungen
> des ersten Repos.
>
> Ich denke ich muss nicht erläutern warum dieses Verhalten extrem ärgerlich ist.
> Kennt jemand das Verhalten und kann es erklären?

Ein "hg pull" entspricht "git fetch", nicht "git pull". Das
heißt, "hg pull" lädt die Änderungen lediglich herunter, ohne
den aktuellen Branch dabei anzufassen.

Ein nachfolgendes "hg update" tut dann, was du willst.

Weil man nach einem "hg pull" eigentlich immer "hg update"
machen will, gibt's auch beides in Kombination über die
Option "-u":

    hg pull -u

> Ja ich weiß das Git die bessere Wahl Währe. Allein es ist vom Kunden gesetzt.

Es gibt Spielereien wie "git-hg" und "hg-git", und
auch hg-fast-export, aber das ist eher für einmalige
Konvertierungen gut, nicht um damit tagtäglich zu
arbeiten.

Etwas von der Qualität "git-svn" (Subversion-Repository
auf Server, Git-Repository lokal) gibt's für Mercurial
soweit ich weiß noch nicht.


Gruß
Volker

-- 
Volker Grabsch
---<<(())>>---



Mehr Informationen über die Mailingliste linux-l