They should almost always be included, as their purpose is to ignore “output” files (compiled binaries, log files) which are going to be generated by anybody working with a clone of your project. They’re meant to be version-controlled and included with the repository.
You should not use .gitignore
files within the repository to ignore files that only appear for you, such as editor-specific swap files. You should be placing those rules in a global .gitignore
file so that they apply to all repositories, or in .git/info/excludes
.