code: func (s *RepositoriesService) CreateFile(ctx context.Context, owner, repo, path string, opt *RepositoryContentFileOptions) (*RepositoryContentResponse, *Response, error) {
  	u := fmt.Sprintf("repos/%s/%s/contents/%s", owner, repo, path)
  	req, err := s.client.NewRequest("PUT", u, opt)
  	if err != nil {
  		return nil, nil, err
  	}
  	createResponse := new(RepositoryContentResponse)
  	resp, err := s.client.Do(ctx, req, createResponse)
  	if err != nil {
  		return nil, resp, err
  	}
  	return createResponse, resp, nil
  }
docs: // CreateFile creates a new file in a repository at the given path and returns
  // the commit and file metadata.
  //
  // GitHub API docs: https://developer.github.com/v3/repos/contents/#create-a-file