This way we only check out a previous state of the requested branch.
For example, if the history looks like:
* (merge) commit 4 |\ | * commit 3 | | | * commit 2 |/ * commit 1
If a commit before 3 is requested, previously, commit 2 would be
--first-parent, we only follow the left path, and commit
1 is selected. This avoids checking out the intermediate state on a