func (r *ServerResponse) Decode(reader *bufio.Reader, isMultiACK bool) error {
	if isMultiACK {
		return errors.New("multi_ack and multi_ack_detailed are not supported")
	}
	s := pktline.NewScanner(reader)
	for s.Scan() {
		line := s.Bytes()
		if err := r.decodeLine(line); err != nil {
			return err
		}
		stop, err := r.stopReading(reader)
		if err != nil {
			return err
		}
		if stop {
			break
		}
	}
	return s.Err()
}
Decode decodes the response into the struct, isMultiACK should be true, if
the request was done with multi_ack or multi_ack_detailed capabilities.
package packp
import (
	"bufio"
	"bytes"
	"errors"
	"fmt"
	"io"
	"gopkg.in/src-d/go-git.v4/plumbing"
	"gopkg.in/src-d/go-git.v4/plumbing/format/pktline"
)
const ackLineLen = 44
type ServerResponse struct {
	ACKs []plumbing.Hash
}