### General file patterns
*~
.*.sw?
.build_lock
.cargo
.clangd
**/.cache/clangd
.checkstyle
.classpath
.config
.envrc
.flutter_tool_state
.fx
.fx-build-dir
.fx-metrics-config
.fx-multi-list
.fx-remote-config
.fx-ssh-path
.fx-sync-from-stem.cache
.cproject
.DS_Store
.gdb_history
.gdbinit
.ignore
.jiri_manifest
.landmines
.packages
.project
.pydevproject
.ssh
.vscode
*_BACKUP_*
*_REMOTE_*
*_LOCAL_*
*_BASE_*
*.dSYM
*.iml
*.orig
*.pyc
*.code-workspace
*.sublime-project
*.sublime-workspace
*.swp
*.swo
Cargo.lock
!/third_party/rust_crates/**/Cargo.lock
Cargo.toml
!/third_party/rust_crates/**/Cargo.toml
go.mod
!/third_party/golibs/**/go.mod
go.sum
!/third_party/golibs/**/go.sum
CMakeLists.txt
compile_commands.json
cmake-build-debug/
cscope.*
default.profraw
rls*.log
Session.vim
fidl-tags
tags
TAGS
Thumbs.db
tools/cipd.gni
topaz/
tmp/
json_generator_tests_*.txt
tables_generator_tests_*.txt


### Specific files
/garnet/tools/cipd.gni

### Directories to be ignored across the tree
.cipd/
.idea/

### Top-level directories
/.jiri/
/.jiri_root/
/integration/
# For storing local scripts and data files in a source tree.
/local/
/out/
/prebuilt/
/test_data/
/third_party/*
!/third_party/llvm-libc/
/third_party/llvm-libc/src
!/third_party/golibs
!/third_party/rust_crates
!/third_party/modinv/
!/third_party/modp_b64
!/third_party/scudo/
/third_party/scudo/src
/third_party/scudo/gwp_asan
!/third_party/zstd/
/third_party/zstd/src
/tmp/
/topaz/
/vendor/
/src/experiences
/build/secondary/third_party/protobuf

# rust-analyzer
/rust-project.json

# jiri generate-gitmodules can be used to generate a .gitmodules file that
# reflects the repos that jiri checked out. This is useful for tooling (like
# vscode) that is aware of submodules. This generated .gitmodules file
# shouldn't be tracked in source control.
/.gitmodules

# Running `fx check-licenses` will generate a NOTICE file at the root of the fuchsia repository. The
# file represents the license state of the entire repository.
# We automatically run this command during some user/userdebug builds, so it can be included in the
# Fuchsia images.
/NOTICE.html
/NOTICE.html.gz
