The .gitignore file tells Git which files and directories to ignore. These files are defined on each line as a pattern.
Note that files already tracked do not get affected by this.
An example of common .gitignore usage is for composer projects along with idea projects that generate generic yet useless files for the library/project scope.
You can also use gitignore to ignore log files.
Ignore directories
Simply define the directory you want all the files inside (and subdirectories) to be ignored:
/vendor/ /.idea/
.idea is a PHPstorm directory created for projects.
Ignore files
To ignore individual files:
/config/auth.json
Using wildcards saves you from needing to define every entry.
Ignore all output.log files:
output.log
Ignore certain file type
Using an asterisk matches everything except a slash
*.log
matches every .log file making them ignored.
Not using an asterisk will mean all directories and files with the pattern are ignored.
Comments
Comments are done with a hash:
# A comment