We have to do a `nil` check since in the absence of the argument we need to check the Git repository. In this context, `nil` is NOT an implied `false`.

Then, after we've established that it's not `nil`, we can't just test for 'truthiness' as the argument is an arbitrary `String` (Ruby has no `Boolean` type to feed to Commander to coerce it). So, if we did what mrunalp suggests, an argument value of `hello` would be incorrectly interpreted as `true`. My current code will treat any non-`true` value as `false`, so it's not perfect either, but I'm content to live with it for now, and the code can be refactored.