Gickup
Getting started
Gickup is a tool that allows you to clone/mirror repositories from one hoster to another. This is useful if you want to have a backup of your repositories on another hoster or to a local server.
References
-
Download tarball
Terminal window wget https://github.com/stefanprodan/gickup/releases/download/v0.10.39/gickup_0.10.39_linux_amd64.tar.gz -
Verify checksum
Terminal window echo "c3d3e647189c4379d8d70b9223bd4fe5eb293b289ece5931ff2e10064b063a67 gickup_0.10.39_linux_amd64.tar.gz" | sha256sum -c - -
Extract and move
Terminal window tar -xzf gickup_0.10.39_linux_amd64.tar.gz && sudo mv gickup /usr/local/bin/gickup -
Make executeable
Terminal window sudo chmod +x /usr/local/bin/gickup -
Create backup/config directory
Terminal window mkdir -p ~/.config/gickup -
Create config
Terminal window nano ~/.config/gickup/config.yaml- Replace YOUR_GITHUB_TOKEN. Token requires these permissions:
all:repo- Full control of public and private repositories.read:gist- Read user gists.read:org- (Optional) Read-only access to organization membership and repos.
- Replace PATH_TO_LOCAL_BACKUP.
config.yaml source:github:- token: "YOUR_GITHUB_TOKEN"wiki: falseissues: falsestarred: falsegists: truedestination:local:- path: "PATH_TO_LOCAL_BACKUP"structured: truebare: truemirror: true- Replace YOUR_GITHUB_TOKEN. Token requires these permissions:
all:repo- Full control of public and private repositories.read:gist- Read user gists.read:org- (Optional) Read-only access to organization membership and repos.
- Replace YOUR_GITEA_TOKEN. Token requires these permissions:
write:org- Read/write access to organization membership and repos.write:repo- Full control of public and private repositories.write:user- Read/write access to user.
- Replace YOUR_GITEA_USERNAME.
config.yaml source:github:- token: "YOUR_GITHUB_TOKEN"wiki: falseissues: falsestarred: falsegists: falsedestination:gitea:- token: "YOUR_GITEA_TOKEN"user: "YOUR_GITEA_USERNAME"url: http://localhost:3004lfs: falsemirror:enabled: truemirrorinterval: 2h0m0s
- Replace YOUR_GITHUB_TOKEN. Token requires these permissions:
-
Run
Terminal window gickup ~/.config/gickup/config.yaml