Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mammad2c/mmd-gitlab-backuper
a package to backup from all projects that you have on gitlab
https://github.com/mammad2c/mmd-gitlab-backuper
backup backup-script gitlab gitlab-account gitlab-backup mmd-gitlab-backuper repository
Last synced: about 2 months ago
JSON representation
a package to backup from all projects that you have on gitlab
- Host: GitHub
- URL: https://github.com/mammad2c/mmd-gitlab-backuper
- Owner: mammad2c
- Created: 2020-10-08T18:39:05.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-07-01T14:21:54.000Z (over 3 years ago)
- Last Synced: 2024-11-29T22:48:46.681Z (2 months ago)
- Topics: backup, backup-script, gitlab, gitlab-account, gitlab-backup, mmd-gitlab-backuper, repository
- Language: JavaScript
- Homepage:
- Size: 625 KB
- Stars: 27
- Watchers: 2
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# mmd-gitlab-backuper
A command line package to backup your repositories in your local from Gitlab. Because of U.S Sanctions there is high risk without any backup. This script supports for users that run gitlab on their own servers.
### Requirements:
- node js v10 above
### Tldr:
`npx mmd-gitlab-backuper -t 'YOUR-PERSONAL-ACCESS-TOKEN'`
**NOTE**: minimum permission required to download repo is `reporter`. you are not allowed to download repo by `guest` permission. you can see permission documents here: [https://docs.gitlab.com/ee/api/members.html](https://docs.gitlab.com/ee/api/members.html)
### How to work:
- grab a Personal Access Token from your gitlab account.
Login on your gitlab account and click on your avatar on top right. Click on `Settings` and from the left sidebar click on `Access Tokens`:
Full url for gitlab.com: [https://gitlab.com/-/profile/personal_access_tokens](https://gitlab.com/-/profile/personal_access_tokens)
Please tik the fields like in the picture
Also provide a name for this token. something like `backup-token`.
![doc1](images/doc1.jpg)
Click on `Create personal access token` and after that grab your token:
![doc2](images/doc2.jpg)
- now run command below in witch directory you want to do backup:
`npx mmd-gitlab-backuper -t 'YOUR-PERSONAL-ACCESS-TOKEN'`
wooow!! that's all. Now your repos will be available in `./repos` directory.
### Options:
See options by `npx mmd-gitlab-backuper --help`:
```
Options:
--version Show version number [boolean]
-t, --token your Gitlab Personal Access Token [string]
-o, --output Backup to output directory, defaults to ./repos [string]
-u, --url Specify Gitlab URL, defaults to https://gitlab.com [string]
--help Show help [boolean]
```for example you can change default backup directory like this:
`npx mmd-gitlab-backuper -t 'YOUR-PERSONAL-ACCESS-TOKEN' -o './gitlab-repo'`
also if you are running gitlab on your own server you can change `url`:
`npx mmd-gitlab-backuper -t 'YOUR-PERSONAL-ACCESS-TOKEN' -u 'https://yourdomain.com'`
**NOTE**: `url` should be without `/` at the end.
---
### Gitlab compatibility:
This script relay on Gitlab API V4. So if your self hosted Gitlab server is outdated, you should update it to use this script.
[https://docs.gitlab.com/ee/api/v3_to_v4.html](https://docs.gitlab.com/ee/api/v3_to_v4.html)
---
# Inspiration
- [https://github.com/itsTeknas/GitlabBackupUtil](https://github.com/itsTeknas/GitlabBackupUtil)