Is it possible to bind commits to each other to make them atomic in terms of bisect, cherry-pick, revert, etc?
Definitively keep those changes (code and unit test) as one commit: SCM is also about being able to reproduce a given state, and that include both the program and its tests.
If you need to review only code changes, do a git diff on src
only, not on tst
.
Since those linked changes remain in one commit, you avoid the bisect issue entirely.
In short, keep it simple ;)