This patch series is in response to the bug report in https://github.com/git-for-windows/git/issues/4462 that demonstrates that git commit -a -m <msg> would no longer always stage all updates to tracked files. The bug has been introduced in Git v2.40.0. Johannes Schindelin (3): do_read_index(): always mark index as initialized unless erroring out split-index: accept that a base index can be empty commit -a -m: allow the top-level tree to become empty again builtin/commit.c | 7 ++----- read-cache.c | 15 +++++++++------ t/t2200-add-update.sh | 11 +++++++++++ 3 files changed, 22 insertions(+), 11 deletions(-) base-commit: a9e066fa63149291a55f383cfa113d8bdbdaa6b3 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1554%2Fdscho%2Ffix-git-commit-a-m-when-tree-becomes-empty-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1554/dscho/fix-git-commit-a-m-when-tree-becomes-empty-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/1554 -- gitgitgadget