Help. I've screwed up my repo again, and I have no idea how.

Rob Landley rob at landley.net
Thu Nov 2 02:13:52 CST 2006


On Thursday 02 November 2006 1:08 am, Matt Mackall wrote:

> So at some point, you started committing in a repo you'd never done a
> checkout in. Or you deleted your .hg/dirstate file. Any idea how that
> happened?

I think dirstate got screwed up.  It's possible I deleted the wrong file in a 
sleep deprived state while trying to undo an add.  (What's the correct way to 
go "wait, calling 'hg add' without an argument was not what I meant to do, 
but I haven't committed it yet, so how do I make the pending uncommitted adds 
go away?"  My memory is that hg help was unrevealing on this subject.).  It's 
also possible I did a repository action as root that accidentally made the 
sucker read only for my normal user, and it later got confused by this.  
Heck, knowing me I could have done both...

> You've actually found a bug here, by the way:
> 
> changeset:   10:4d21d59f3206
> user:        landley at driftwood
> date:        Tue Oct 31 23:30:06 2006 -0500
> summary:     Add menuconfig, plus some basic Config info, lots of
> 
> We don't report that the parent is not 9.
> 
> >   $ hg merge
> >   abort: outstanding uncommitted changes
> 
> Again, we don't like to merge here because merging is potentially
> destructive. Forcing a commit allows botched merges to be redone. And
> it also makes the history more detailed, differentiating changes done
> before and during the merge.

Understood.

I eventually got the repository untangled.  I plan to write up additional 
documentation once I have a better idea about what I'm doing.  (I write 
documentation out of sheer self-defense...)

> Note that the recorded username is landley at driftwood. Not very useful

Yup, me at my laptop.

> for an actual distributed project. Rather than clutter project
> histories with guesses, we're now making people set a name.

I figured it was the upgrade that did it, and it's a reasonable thing to do.  
I was just a bit frustrated by that point. :)

> This should be in the readme.
>  
> > Question: Why doesn't the error message above say _HOW_ to add a commit 
> > username to hgrc?  It's not obvious.  Read far enough in the man page and 
you 
> > find it's key "username" in section "ui", except that says the default is 
> > username at hostname which is apparently no longer the case.
> 
> Because some clever person decided my original terse message was not
> verbose enough. Also, you have an old manpage in your path.

I did an hg pull, make all, make install.  (I think that's what I did.)  
That's the only man page I've got.

I figured it out from the man page eventually, and later I bumped into a 
section of the tutorial said how to add it too.  Since that seems to be the 
only part of hgrc you actually _need_, it might be nice if it was a little 
more prominent in the man page.

Thanks for your help.  It's a very nice project I hope to actually use 
competently someday. :)

Rob
-- 
"Perfection is reached, not when there is no longer anything to add, but
when there is no longer anything to take away." - Antoine de Saint-Exupery


More information about the Mercurial mailing list