From d9117896a6fd4e5fb0edd0f90be9c7a01649ff3f Mon Sep 17 00:00:00 2001 From: Refael Ackermann Date: Wed, 29 May 2019 11:41:12 -0400 Subject: build,meta: rearrange and narrow git ignore rules MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/27954 Reviewed-By: Rich Trott Reviewed-By: Michaƫl Zasso --- .gitignore | 157 +++++++++++++++++++++++++++++++------------------------------ 1 file changed, 80 insertions(+), 77 deletions(-) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index 9250c4bae7..8225a9b408 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,13 @@ -# Whitelist dotfiles +# Please take extra care not to add rules that will make tracked files ignored. +# To test that, run `git ls-files -i --exclude-standard`. +# To check why a specific file is ignored, run `git check-ignore -v `. + +# === Rule for dotfiles === +# Ignore all dotfiles. .* +# Exclude specific dotfiles that we want to track. !deps/**/.* !test/fixtures/**/.* -!tools/node_modules/**/.* -!tools/doc/node_modules/**/.* !.clang-format !.editorconfig !.eslintignore @@ -19,109 +23,108 @@ !.eslintrc.yaml !.cpplint -core -vgcore.* -v8*.log -perf.data -perf.data.old -tags -*.pyc -doc/api.xml -tmp/ -test/tmp*/ -iojs -iojs_g -node -node_g -*.swp -icu_config.gypi -node_trace.*.log -coverage/ -!**/node_modules/**/coverage - +# === Rules for root dir === +/core +/vgcore.* +/v8*.log +/perf.data +/perf.data.old +/tags +/doc/api.xml +/node +/node_g +/*.exe +/*.swp /out +/*.txt + +# === Rules for artifacts of `./configure` === +/icu_config.gypi +/config.gypi +/config.status +/config_fips.gypi -# various stuff that VC++ produces/uses and is not in /out +# === Rules for MSVS artifacts === /Debug /Release -!doc/blog/** *.sln -!nodemsi.sln *.suo -*.vcxproj -!custom_actions.vcxproj -*.vcxproj.user -*.vcxproj.filters +*.vcxproj* UpgradeLog*.XML _UpgradeReport_Files/ *.sdf *.opensdf -*.VC.db -*.VC.opendb -/*.exe +*.VC.* +*.wixobj +/tools/msvs/genfiles/ +/npm.wxs +# Exclude MSVS files used for .msi file generation +!tools/msvs/msi/custom_actions.vcxproj +!tools/msvs/msi/nodemsi.sln -/config.mk -/config.gypi -/config.status -/config_fips.gypi +# === Rules for GYP artifacts === *-nodegyp* -/gyp-mac-tool -/npm.wxs -/tools/msvs/npm.wixobj -/tools/msvs/genfiles/ +/gyp-*-tool /test/addons/??_*/ -email.md -deps/v8-* -deps/icu -deps/icu*.zip -deps/icu*.tgz -deps/icu-tmp -./node_modules -android-toolchain/ +/*.mk +# === Rules for other build artifacts === +/email.md +/deps/v8-* +/deps/icu +/deps/icu*.zip +/deps/icu*.tgz +/deps/icu-tmp +./node_modules +/android-toolchain/ # generated by gyp on Windows -deps/openssl/openssl.props -deps/openssl/openssl.targets -deps/openssl/openssl.xml - +/deps/openssl/openssl.props +/deps/openssl/openssl.targets +/deps/openssl/openssl.xml # generated by gyp on android /*.target.mk /*.host.mk -deps/openssl/openssl.target.mk -deps/zlib/zlib.target.mk - -!deps/npm/node_modules -# not needed and causes issues for distro packagers -deps/npm/node_modules/.bin/ +/deps/openssl/openssl.target.mk +/deps/zlib/zlib.target.mk -# build/release artifacts +# === Rules for release artifacts === /*.tar.* /*.pkg /SHASUMS*.txt* -# api docs artifacts -tools/doc/node_modules - -# clang-format artifacts -tools/clang-format/node_modules +# === Rules for `node_modules` === +!**/node_modules/** +/node_modules +/tools/doc/node_modules +/tools/clang-format/node_modules -# test artifacts -icu_config.gypi -*.tap +# === Rules for test artifacts === +/*.tap /*.xml +/node_trace.*.log +# coverage related +/gcovr +/build -# Xcode workspaces and project folders +# === Rules for XCode artifacts === *.xcodeproj *.xcworkspace +*.pbxproj -# libuv book and GitHub template -deps/uv/.github/ -deps/uv/docs/code/ -deps/uv/docs/src/guide/ - -# do not override V8's .gitignore +# === Rules for files in `/deps` === +# Exclude all files in the vendored `npm`. +!/deps/npm/node_modules +# These are not needed and causes issues for distro packagers. +/deps/npm/node_modules/.bin/ +# Respect V8's .gitignore !deps/v8/** -# ignore VS compiler output unhandled by V8's .gitignore -deps/v8/third_party/eu-strip/ +# Ignore the libuv book and GitHub templates +/deps/uv/.github/ +/deps/uv/docs/code/ +/deps/uv/docs/src/guide/ +# === Global Rules === +# Keep last to avoid being excluded +*.pyc +__pycache__ .DS_Store -- cgit v1.2.3