HomePhabricator

In Git, fall back across versions more cleanly when trying to get the URI for a…

Description

In Git, fall back across versions more cleanly when trying to get the URI for a remote

Summary: Fixes T13481. When identifying the URI for a remote, fall back from "git remote get-url" to "git ls-remote --get-url" to "git config remote.<name>.url" based on command output and version tests.

Test Plan: Ran arc land --hold, rigged the subcommands to fail to try all three fallbacks, ran arc land --hold --remote asdfasdf to get an explicit failure.

Maniphest Tasks: T13481

Differential Revision: https://secure.phabricator.com/D20950