From 89e753e2536bf7e800fc0dcab2e5a59b652e6ea9 Mon Sep 17 00:00:00 2001 From: Jean-Louis Leroy Date: Sat, 12 Sep 2026 12:08:04 -0400 Subject: [PATCH] chore: ignore b2's output directories `.gitignore` covered `build/`, which is where CMake puts its tree, but not `bin/`, which is where b2 puts its own. b2 makes one per project that has targets, so after a `b2 test` run the working tree carries untracked object trees at the root and under test/, test/dynamic_loading/ and each test/implicit_shared_libraries/ variant. Untracked but addable is the awkward part: `git add test` or `git add -A` sweeps them in, and a single such commit runs to tens of thousands of lines of `.o` files. Nothing warns, because nothing is wrong until it is committed. `doc/node_modules`, the equivalent for the Antora build, is already covered by doc/.gitignore. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01JQa4fuiwcfsheZYTCyfPPr --- .gitignore | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.gitignore b/.gitignore index 87dd85ca..975232e1 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,11 @@ notes.txt # Flattened headers for Compiler Explorer (dev/flatten.py). flat/ + +# b2 output. One directory per project that has targets, so `bin/` turns up at +# the root and under test/, test/dynamic_loading/ and each +# test/implicit_shared_libraries/ variant. Only `build/` was ignored, which +# covers CMake but not this, leaving the object trees permanently +# untracked-but-addable - `git add test` would commit tens of thousands of +# lines of objects. +bin/