After running `yarn set version berry` and `yarn install`, the file `.yarn/install-state.gz` is created.
The documentation at https://yarnpkg.com/advanced/qa#which-files-should-be-gitignored mentions that this file should be ignored:
> .yarn/install-state.tgz is an optimization file that you shouldn't have to ever commit. It simply stores the exact state of your project so that the next commands can boot without having to resolve your workspaces again.
The documentation has a minor error; the generated file is `.gz` instead of `.tgz` (source: https://github.com/yarnpkg/berry/pull/998/files#diff-23dd4c2e823c25186f1107e88e962032R201)
* Ignore files inside `.vscode-test`
[vscode-test](https://github.com/microsoft/vscode-test) is a testing framework for vscode extensions. Inside the `vscode-test` folder are stored one or more versions of vscode, which are used for testing a vscode extension.
* Update Node.gitignore
Lerna is an increasingly popular tool within node ecosystem to manage package dependencies and having writes to a `lerna-debug.log` following the yarn and npm precedence when error is encoutered.
Some .gitignore parsers interpret directory vs non-directory patterns strictly (e.g. monochromegane/go-gitignore), so a `node_modules` pattern would not necessarily match against a real `node_modules` directory. It's generally safe to add a trailing slash to directory .gitignore patterns.
Some popular applications (for example, Phusion Passenger) leave `*.pid.lock` file(s). For example, when you type `passenger start` with simple express app listening on port 3000, it leaves the following files:
* `passenger.3000.pid` (removed when passenger stops)
* `passenger.3000.log`
* `passenger.3000.pid.lock`
While `*pid` and `*.log` are ignored, `*.pid.lock` remains unignored. Phusion Passenger is quite popular, and `*.pid.lock` file should be ignored.
[nyc](https://github.com/bcoe/nyc) is quite popular, and under some circumstances it writes to `.nyc_output` directory. This directory should be ignored by default.