History reword vs git history reword or scripted rebase
repo: 10,000-file synthetic repository; canonical cached shape, scenario variants documented by the runner · 10,000 files · 1,000 commits · 800 refs
| tool | median | min | max | runs | peak memory |
|---|---|---|---|---|---|
| git | 6.39 s | 6.26 s | 6.40 s | 5 | 28 MB |
| grit | 129 ms | 128 ms | 131 ms | 5 | 23 MB |
$ set -eu; GIT_CONFIG_NOSYSTEM=1 GIT_CONFIG_GLOBAL='/tmp/grit-bench-global-config' GIT_CONFIG_SYSTEM=/dev/null GIT_AUTHOR_NAME=Bench GIT_AUTHOR_EMAIL=b@example.com GIT_COMMITTER_NAME=Bench GIT_COMMITTER_EMAIL=b@example.com GIT_COMMITTER_DATE='1700000100 +0000' ./.grit-bench/git-reword-rebase.sh >/dev/null
$ set -eu; grit history reword HEAD~1000 -m 'grit-bench history rewrite message' >/dev/null
| date | grit commit | git | grit | grit vs git | grit peak |
|---|---|---|---|---|---|
| 2026-10-27 | 8dbc58e77 | 6.39 s | 129 ms | 49× faster | 23 MB |
| 2026-10-26 | c7cf2c443 | — | fail | — | — |
| 2026-10-25 | 2824ad391 | 6.36 s | 146 ms | 44× faster | 22 MB |
| 2026-10-24 | 157a05dde | 6.59 s | 158 ms | 42× faster | 45 MB |
| 2026-10-23 | bddf92f86 | 6.36 s | 163 ms | 39× faster | 45 MB |
| 2026-10-22 | 4c131b942 | 6.22 s | 154 ms | 40× faster | 45 MB |
| 2026-10-21 | d4844e92a | 6.09 s | 151 ms | 40× faster | 45 MB |
| 2026-10-20 | 4754ad0b9 | 6.38 s | 150 ms | 42× faster | 44 MB |