// Copyright 2016 The Gitea Authors. All rights reserved. // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. package gitea import ( "bytes" "encoding/json" "fmt" ) // ListForks list a repository's forks func (c *Client) ListForks(user, repo string) ([]*Repository, error) { forks := make([]*Repository, 10) err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/forks", user, repo), nil, nil, &forks) return forks, err } // CreateForkOption options for creating a fork type CreateForkOption struct { // organization name, if forking into an organization Organization *string `json:"organization"` } // CreateFork create a fork of a repository func (c *Client) CreateFork(user, repo string, form CreateForkOption) (*Repository, error) { body, err := json.Marshal(form) if err != nil { return nil, err } fork := new(Repository) err = c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/forks", user, repo), jsonHeader, bytes.NewReader(body), &fork) return fork, err }