### General file patterns
*~
.*.sw?
.build_lock
.clangd
.checkstyle
.classpath
.config
.fx-build-dir
.cproject
.DS_Store
.gdb_history
.gdbinit
.jiri_manifest
.landmines
.packages
.project
.pydevproject
.ssh
.vscode
*.iml
*.orig
*.pyc
*.sublime-project
*.sublime-workspace
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
tags
Thumbs.db
tools/cipd.gni
topaz/
vendor/
!/third_party/rust_crates/vendor
tmp/

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

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

### Top-level directories
/.jiri/
/.jiri_root/
/infra/
/integration/
# For storing local scripts and data files in a source tree.
/local/
/out/
/prebuilt/
/test_data/
/third_party/*
!/third_party/rust_crates
/tmp/
/topaz/
/vendor/
/src/experiences

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