code: func (c *commit) Proto() (ret *git.Commit, err error) {
  	ret = &git.Commit{
  		Id:       c.Commit,
  		Tree:     c.Tree,
  		Parents:  c.Parents,
  		Message:  c.Message,
  		TreeDiff: c.TreeDiff,
  	}
  
  	if ret.Author, err = c.Author.Proto(); err != nil {
  		err = errors.Annotate(err, "decoding author").Err()
  		return
  	}
  	if ret.Committer, err = c.Committer.Proto(); err != nil {
  		err = errors.Annotate(err, "decoding committer").Err()
  		return
  	}
  
  	return
  }
docs: // Proto converts this git.Commit to its protobuf equivalent.