The basics to .gitignore

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