docs: show how to benchmark across git branches

This commit is contained in:
xfocus3 authored and David Peter committed 2026-10-05 11:53:07 +02:00
1 parent 862625fb3d
commit e1fa3ace8d
1 file changed
+14
+14
View File
@@ -88,6 +88,20 @@ option:
hyperfine -L compiler g++,clang++ '{compiler} -O2 main.cpp'
```
A common use case is comparing the same command across multiple Git branches. Use `--setup`
to switch branches once before each set of timing runs, so the branch switch is not part of
the measured command:
```sh
hyperfine \
--parameter-list branch main,performance-improvements \
--setup 'git switch {branch}' \
'rails runner true'
```
Make sure your working tree is clean before switching branches. If you want to benchmark
uncommitted changes, consider using `git worktree` and benchmarking the same command in each
worktree instead.
### Intermediate shell
By default, commands are executed using `sh` on Unix (resolved through `PATH`) or `cmd.exe` on Windows.