Navigation
Import and Mirroring
How to import repositories from other platforms and set up automatic mirroring
GitRiver allows you to import existing repositories from other platforms and set up automatic mirroring for synchronization.
Repository Import
Supported Sources
| Source | What is imported |
|---|---|
| GitHub | Code, issues, pull requests, labels, milestones, releases, Wiki |
| GitLab | Code, issues, merge requests, labels, milestones, releases, Wiki |
| Bitbucket | Code, issues, pull requests |
| Gitea | Code, issues, pull requests, labels, milestones, releases, Wiki |
| Arbitrary URL | Code only (git clone) |
Step by Step
- Click ”+” in the top bar -> “Import”
- Select the source (GitHub, GitLab, Bitbucket, Gitea)
- Enter an access token - a personal token with repository read permissions on the source platform
- For self-hosted instances, specify the instance URL (e.g.,
https://gitlab.company.com) - Click “Load repositories” - a list of available repositories will appear
- Select a repository or enter a URL manually
- Specify the name in GitRiver (defaults to the original)
- Choose what to import:
- Issues
- Labels
- Milestones
- Pull requests / merge requests
- Releases
- Wiki
- Optionally: “Create mirror” - set up automatic synchronization after import
- Click “Start import”
Import Progress
The import runs in the background. The repository page displays the progress: which stage (code, issues, pull requests, releases), how many imported. After completion - status “Done” or “Error” with a description.
Pull Mirroring
A pull mirror periodically fetches changes from an external repository into GitRiver. Useful when the main repository is hosted on another platform, and GitRiver is used as a backup or for CI.
Setup
- Open the repository -> “Settings” -> “Mirror” section
- Click “Create mirror”
- Select the direction: Pull (receive)
- Specify:
- Remote repository URL -
https://github.com/owner/repo.git - Token - for accessing private repositories (optional)
- Sync interval - from 5 minutes to 7 days
- Remote repository URL -
- Click “Create”
How It Works
GitRiver automatically performs git fetch from the remote repository at the specified interval. All new commits, branches, and tags appear in GitRiver.
Manual Sync
Click “Sync” on the mirror page for immediate synchronization without waiting for the interval.
Status
The mirror page shows: last sync time, status (active/disabled), errors if any.
Push Mirroring
A push mirror automatically sends changes from GitRiver to an external repository. Useful for backup or publishing code on another platform.
Setup
- Open the repository -> “Settings” -> “Mirror” section
- Click “Create mirror”
- Select the direction: Push (send)
- Specify:
- Remote repository URL - with authorization in the URL (e.g.,
https://token@github.com/owner/repo.git) - Sync interval - from 5 minutes to 7 days
- Remote repository URL - with authorization in the URL (e.g.,
- Click “Create”
How It Works
On each sync, GitRiver performs git push to the external repository. All commits, branches, and tags are sent automatically.
Deleting a Mirror
On the “Settings” -> “Mirror” page -> “Delete mirror” button. Synchronization stops. Repository data is not deleted.