Create a remote, with options.
This function allows more fine-grained control over the remote creation.
Passing NULL as the opts argument will result in a detached remote.
the resulting remote
the remote's url
the remote creation options
0, GIT_EINVALIDSPEC, GIT_EEXISTS or an error code