code: func (s *GitService) CreateRef(ctx context.Context, owner string, repo string, ref *Reference) (*Reference, *Response, error) {
  	u := fmt.Sprintf("repos/%v/%v/git/refs", owner, repo)
  	req, err := s.client.NewRequest("POST", u, &createRefRequest{
  		// back-compat with previous behavior that didn't require 'refs/' prefix
  		Ref: String("refs/" + strings.TrimPrefix(*ref.Ref, "refs/")),
  		SHA: ref.Object.SHA,
  	})
  	if err != nil {
  		return nil, nil, err
  	}
  
  	r := new(Reference)
  	resp, err := s.client.Do(ctx, req, r)
  	if err != nil {
  		return nil, resp, err
  	}
  
  	return r, resp, nil
  }
docs: // CreateRef creates a new ref in a repository.
  //
  // GitHub API docs: https://developer.github.com/v3/git/refs/#create-a-reference