### General file patterns
*~
.*.sw?
.build_lock
.cargo
.clangd
**/.cache/clangd
.checkstyle
.classpath
.config
.envrc
.flutter_tool_state
.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
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/
vendor/
!/src/connectivity/bluetooth/hci/vendor
!/third_party/rust_crates/vendor
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/rust_crates
!/third_party/modp_b64
/tmp/
/topaz/
/vendor/
/src/experiences

# rust-analyzer
/rust-project.json

# All files in vendor need to be delivered as is, as they use
# checksumming to ensure secure package delivery.
!/third_party/rust_crates/vendor/**

# fxbug.dev/55387, fxbug.dev/57231: keep go.sum files in subdirectory but do not commit them
# for now.
/*/go.sum

# 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
