How to use Mercurial?

Jon Ribbens jon-mercurial at unequivocal.co.uk
Thu Apr 8 10:07:32 CDT 2010


On Thu, Apr 08, 2010 at 04:54:03PM +0200, Dirkjan Ochtman wrote:
> On Thu, Apr 8, 2010 at 16:51, Jon Ribbens
> <jon-mercurial at unequivocal.co.uk> wrote:
> > If we want to make sure a project repository has all the latest
> > changes from the central repository, we do 'hg pull -u', which
> > then requires a 'hg merge' and 'hg ci -m merge'. However, if
> > the working directory is dirty this involves all sorts of nastiness
> > with 'hg merge -f' and manually keeping track of which changed files
> > are changed due to the "pull -u" and which were already changed
> > locally.
> 
> Yeah, you're not supposed to have a dirty working dir while merging.
> You should probably wait with merging until you have the local changes
> committed.

Yes, that was the impression I was getting. What I don't understand is
how this is an acceptable restriction? What working practices to
people use that make this limitation one they can live with?

> Using hg pull --rebase (after enabling the rebase extension) may also
> help here, but you should read up on what rebasing is exactly, first.

Super, thanks. http://mercurial.selenic.com/wiki/RebaseProject
seems to be the relevant documentation, although it doesn't discuss at
all about what happens if the working directory is dirty. I guess I'll
have to try it out.

Is the rebase extension that's bundled with Mercurial 1.5 considered
solid production-quality code? (For that matter, are all the other
extensions that are included considered production-quality?)


More information about the Mercurial mailing list