the whole point of writing things that don't rely on global state is that they don't rely on global state, and are thus easy to test.
this is easy to test. the problem is the testing tooling doesn't support it. there's no way to throw a separate chroot (or even a tempdir) at each test. in fact, there's never gonna be a way to use separate chroot because cargo test runs everything in threads, but again, no global state. makes things a lot easier, if you can just... ugh. >.<
we just wanna test that we're doing the thing with git that'll get git to do what we want it to do. because it's a lot easier to test individual parts (units) and know they're working than try to write the whole application and then only run integration tests by hand.
(and we can't use a git library because they don't support our git repos. they'll literally error out even tho
git clone supports them fine.)