On Fri, Apr 25, 2014 at 04:09:47PM -0700, a...@bellandwhistle.net wrote:
Andrew Ardill andrew.ard...@gmail.com writes:
As a data point, I have seen people add .gitignore to their
.gitignore file, as they don't want to share the file.
Right, I've seen that too.
That something I am actually doing in my projects, because I didn't
know they were other way to exclude files like .gitignore.
It confused the heck out of me. It only lends
credence to my point about the docs. Those users want the functionality of a
pattern in '$GIT_DIR/info/exclude', but haven't been able to figure it out
easily enough. They've just heard about .gitignore, so they're using that.
Yes, it's all there in the docs if you read it several times, and you
already know what you're looking at, but not in a terribly accessible, best
practices, advice from a smart friend who's been through it all already
kind of way.
Well documentation can be useful when you know what you're looking for,
but I won't go read it just for discovering new features I didn't know.
Well, yes: semantics. Since they do slightly different things, they should
have different names. It makes reference and teaching much easier. In fact,
if a renaming were to occur, I would actually prefer even better semantics:
.gitignore - .shared-ignore
$GIT_DIR/info/exclude - $GIT_DIR/info/local-ignore
These suggested names could perhaps be improved on. But if anything, the
names need to be more different, not less. Users should be able to instantly
know what a speaker is talking about without having to doublecheck and ask
if by git-ignore, the speaker really meant git ignore or
dot-gitignore.
I agree with a new name for .gitignore. A name like shared-ignore would
make explicite the fact it is shared, and then the user would look for
another way to locally exclude files. This would be a good approach, but
changing it won't be easy as most people already use .gitignore.
Would it be acceptable to have git display a warning when it detects
that .gitignore is excluding itself, with eventually a link to the
documentation or the path to $GIT_DIR/info/exclude ?
pgp468gFl5uiM.pgp
Description: PGP signature