Now `hub remote` will only prompt to select from your configured hosts
if it can't infer the GitHub hostname from existing remotes.
In case you're prompted, and you choose a GHE host, now that choice will
be properly reflected in the generated URL, unlike before when it would
always revert to "github.com" regardless of choice.
Fixes#1141
The `create` and `remote` commands needs to infer the current project
name from the project's directory. Instead of using the current working
directory, which doesn't necessarily match the project's toplevel
directory, use `git rev-parse --show-toplevel` which also respects the
`-C` global flag setting.
Fixes#1105, closes#1114
`hub remote add origin` and `hub remote add MY-USERNAME` will now act as
if `-p` was given and automatically assign private (SSH) URLs instead of
public ones, because the fact that these are your repos means you have
write access.
`configService` can save and load `Config` using a strategy of `configEncoder` and `configDecoder`. This pave the path for swapping out `tomlConfigEncoder` and `tomlConfigDecoder` with `yamlConfigEncoder` and `yamlConfigDecoder`.
`Configs` also has been renamed to `Config`.
This'll make sure we propagate error to the caller where we can reformat
the error message within the context.
This fixes `features/authentication.feature:85`