keyword: versioning my homedir and ~/.hgrc

Christian Ebert blacktrash at
Mon Jul 6 09:59:30 CDT 2009

* Greg Ward on Monday, July 06, 2009 at 09:26:42 -0400
> On Sun, Jul 5, 2009 at 10:34 PM, Christian Ebert<blacktrash at> wrote:
>> To what end do you want to have versioned keywords in .hg* files?
>> Besides for the purpose of being bad, which I support
>> wholeheartedly ;-) I don't see that it makes sense.
> Because he's versioning his home directory, and .hgrc is just another
> config file.

And what would be the use case where he cannot do
"hg log -l1 .hgrc"?

I only can think of the case where you say to someone, look, this
is the .hgrc file I used in my home directory in 2007, it has the
expanded date keyword to prove it.

OTOH, I imagine the main purpose of versioning you home directory
that you can quickly check out a revision of certain config files
etc. Then you need hg anyway.

> To the Mercurial tracking /home/me, .hgrc is no more
> special than .zprofile or .gitconfig.  It's just content.  (OK, it's
> *slightly* more special because it is .hgrc, but it has nothing to do
> with the repo in /home/me specifically.)

Well, it might break something in the VCS you are versioning your
(home) directory with, not only in the (home) directory's
content, which you could restore with the help of the VCS.
> Perhaps the "don't touch hg files" rule should use an explicit list
> (.hgtags, .hg_archival.txt) rather than a wildcard?

$ hg log -p -r 1038b1458d7a hgext/ | fgrep "['.hg"
-    inc, exc = [], ['.hgtags']
+    inc, exc = [], ['.hg*']

(I remember now, that of course .hg_archival did not have to be
 excluded because it's only generated in the archive.)

Personally, I'd prefer to stay it as it is, but nothing prevents
you from sending a patch that reverts it (and at least adds '.hg'
to the list). "I wash my hands of it" ;-)

  Was heißt hier Dogma, ich bin Underdogma!
[ What the hell do you mean dogma, I am underdogma. ]
_F R E E_  _V I D E O S_

More information about the Mercurial-devel mailing list