--- sidebar_position: 9 description: "Import a repository from another server" --- # gt repo migrate Import a repository from another server ## Synopsis ```text Import a repository from a Git URL, or from another forge with --service (which can also copy issues, pull requests, releases and more). A private source needs --auth-token or --auth-user and --auth-password. --mirror creates a pull mirror instead. The name defaults to the last segment of the URL. ``` ``` gt repo migrate [] [flags] ``` ## Examples ``` # Import a public Git repository $ gt repo migrate https://github.com/go-gitea/gitea.git # Mirror a repository into an organization every 8 hours $ gt repo migrate https://github.com/go-gitea/gitea.git --owner acme --mirror --mirror-interval 8h # Import a GitHub repository with its issues and pull requests $ gt repo migrate https://github.com/acme/tool --service github --issues --pull-requests --auth-token-file token.txt ``` ## Options ``` --auth-password string Source password (prefer file input) --auth-password-file string Read source password from file or - --auth-token string Source API token (prefer file input) --auth-token-file string Read source API token from file or - --auth-user string Source authentication username -d, --description string Repository description -h, --help help for migrate --issues Copy issues --labels Copy labels --lfs Copy LFS objects --lfs-endpoint string Source LFS endpoint --milestones Copy milestones --mirror Create a pull mirror --mirror-interval string Mirror interval, for example 8h (0 turns off periodic sync) --name string Destination repository name (default: the source's name) --owner string Destination user or organization (default: your account) --private Make the imported repository private --pull-requests Copy pull requests --releases Copy releases --server-path string Absolute source Git repository path on the Gitea server (requires server permission) --service string Source service {git|gitea|gitlab|gogs|github} (default "git") --timeout duration Maximum migration request duration; Gitea may continue an import after cancellation (default 10m0s) --wiki Copy wiki ``` ## Options inherited from parent commands ``` --cwd directory Working directory for repository discovery --debug Log the method, URL, status, and duration of each HTTP request to stderr --host URL Gitea instance URL, including any base path --interactive Allow prompts with machine output -q, --jq expression Filter JSON output using a jq expression; implies --json --json fields[="*"] Output JSON with the specified comma-separated fields, or all fields --no-input Disable prompts and implicit editor/browser interactions --remote remote Git remote used for repository discovery -R, --repo OWNER/REPO Select a repository as OWNER/REPO or URL --sudo user Perform API requests as this user (requires an administrator account) --user name Account name on the selected instance -y, --yes Accept confirmations without prompting ``` ## SEE ALSO * [gt repo](../repo/index.md): Work with Gitea repositories