Hi Thomas,
On May 24, 2010 10:56:03 am T. Modes wrote:
> > .hgignore is global and pushed/pulled across repositories, so
> > your .hgignore will go to SourceForge at the next push, and from there
> > to me, Harry, and others at our next pull.
>
> You are wrong. I did already some commits and my .hgignore did not
> gone to sf. Cause: I added also .hgignore to .hgignore
> TortoiseHG added the entries to the file. So I assumed, it would be
> the right place.
Nobody is wrong. The intended use by Hg is for .hgignore to be global / in
the repository and thus revision managed. By adding .hgignore to .hgignore
you defeated the purpose of .hgignore and found another way to implement user-
specific ignore lists.
Please remove .hgignore from your .hgignore and commit - the ignores you
listed are all useful for all Windows users.
> Concerning files going to repository: By using a GUI it is really
> straightforward to control which files/changes go into the repository
> and which changes remain in the local copy. Therefore I prefer using a
> GUI because it allows me finer control about the commits than doing
> all on the command line.
Sure, I have not found an equivalent for TortoiseHG in Linux yet. I have not
bothered to search. I can see that a good GUI like TortoiseHG has many
advantages over the command line tools. I am already using hg view (which is
kind of a read-only GUI) as the most efficient way IMHO to get an overview.
> > If you want to ignore something on a per-user basis (i.e. locally
> > only), you need to reference a file in your ~/.hgrc (or
> > <repo>/.hg/.hgrc) file in the "ignore" entry of the [ui] section, e.g.
>
> There is no ~/.hgrc file on windows. It's called mercurial.ini ;-)
> But in the repository it's .hg/hgrc (without point). So this setting
> stuff is very confusing. Some settings can be changed inside
> TortoiseHG (as a global setting and as a repository setting). But the
> ignore switch is not included. When I selected to ignore the files,
> the .hgignore file was created.
sorry for the confusion, my mistake to put the dot in front of the hgrc file
inside the repository.
to my knowledge, there are two places for settings:
USER-specific settings are in ~/.hgrc or, as you point out for Windows in
mercurial.ini (which directory is it store into?)
REPOSITORY-specific settings are in <REPO>/.hg/hgrc
I don't know if/how TortoiseHg edits the hgrc (or mercurial.ini) file; nor
whether it does it the way the Mercurial people intend.
I do know that if you add to the [ui] section of an hgrc file a line saying
ignore = /path/to/special_ignore_file
you can have in that special_ignore_file the same kind of ignore directives as
in .hgignore and it has the same syntax.
to avoid confusion, we should put in <REPO>/.hgignore only things that are
globally valid for everybody; and put user specific ignores outside of it.
Yuv