Back in 18f7c51c we switched git-ls-remote/git-peek-remote to use the transport backend, rather than do everything itself. As part of that switch we started to produce a non-zero exit status if no refs were received from the remote peer, which happens when the remote peer has no commits pushed to it yet. (E.g. "git --git-dir=foo.git init; git ls-remote foo.git") Signed-off-by: Shawn O. Pearce <spearce@xxxxxxxxxxx> --- This patch is built against `maint`. It will cause a merge conflict against `master` as there is a change there to invoke transport_disconnect(transport) before displaying the refs. Since the disconnect patch is not in maint, but this is a current regression in 1.5.4.3, I'm sending you a conflicting patch. :) As far as resolving this when it merges to master, the return value of transport_disconnect() is probably what should be checked to signal a non-zero exit status to the caller, not the empty ref list. builtin-ls-remote.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/builtin-ls-remote.c b/builtin-ls-remote.c index 6dd31d1..720280e 100644 --- a/builtin-ls-remote.c +++ b/builtin-ls-remote.c @@ -94,10 +94,6 @@ int cmd_ls_remote(int argc, const char **argv, const char *prefix) transport_set_option(transport, TRANS_OPT_UPLOADPACK, uploadpack); ref = transport_get_remote_refs(transport); - - if (!ref) - return 1; - for ( ; ref; ref = ref->next) { if (!check_ref_type(ref, flags)) continue; -- 1.5.4.3.529.gb25fb -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html