code: function discover(callback) {
        if (!callback) return discover.bind(this);
        get("/info/refs?service=git-upload-pack", {
          "Accept": "*/*",
          "Accept-Encoding": "gzip",
          "Pragma": "no-cache"
        }, function (err, code, headers, body) {
          if (err) return callback(err);
          if (code !== 200) return callback(new Error("Unexpected status code " + code));
          if (headers['content-type'] !== 'application/x-git-upload-pack-advertisement') {
            return callback(new Error("Wrong content-type in server response"));
          }
  
          body = deframer(body);
          if (trace) body = trace("input", body);
  
          body.read(function (err, line) {
            if (err) return callback(err);
            if (line.trim() !== '# service=git-upload-pack') {
              return callback(new Error("Missing expected service line"));
            }
            body.read(function (err, line) {
              if (err) return callback(err);
              if (line !== null) {
                return callback(new Error("Missing expected terminator"));
              }
              sharedDiscover(body, callback);
            });
          });
        });
      }
docs: Send initial git-upload-pack request outputs refs and caps