How to use .gitignore
So what's wrong with me, write down an article for
this answer makes me
reconsider how to use
The answer tell us it have a better name:
The origin problem is coming from the asker tracks files that shouldn't be. How to prevent any out of the expected document won't be tracked? How can we avoid this happened? We have to ensure every file tracked is because we allowed.
Normally, we add the pattern we don't want to track into
However, it can be really annoying, for example, sometimes I use
sometimes I use
vscode and sometimes I use Jetbrains products.
vscode and Jetbrains would create a folder in your
project. And more shit is some
language-server also do this.
So we want to have a common file to place for it. We can do this:
git config --global --add core.excludesfile /path/to/common-gitignore
What's the problem with this? The problem is how to ensure I do this for every environment? I can do this for my new computer, but can't do that for my co-worker. And if they are contributors from the internet. That became impossible.
But we still want to do something. So here I suggest we, anyway,
whatever, balabalabala, use a wildcard at the top to not track anything
! pattern for those we pretty sure should be tracked.
For example, a Go project can use following:
# .gitignore * !.gitignore !*.c !*.go !*.sum !*.mod !*.md !Makefile
Yes, prevent everything first. And make sure what we want to keep. After we reverse the thought, we pretty sure that every tracked file, of course, is those we want to track.