gitlab-backup-util-harduino

2.0.1 • Public • Published

GitlabBackupUtil

A Small utility to backup all of your gitlab repositories to local filesystem. You never know when international laws change and you loose access to your repos.

It is painful for me to hear how trade restrictions have hurt people. We have gone to great lengths to do no more than what is required by the law, but of course people are still affected. GitHub is subject to US trade law, just like any company that does business in the US.

— Nat Friedman (@natfriedman) July 28, 2019

Harduino's Fork Info

This repo contains fixes and improvements. I needed to make backups for all projects listed in https://gitlab.com/dashboard/projects, and original repo didn't do that for some repos, i.e. did partial backup.

Changes:

  • refactor algorithm to form projects-to-backup. Original version formed personal projects (/api/v4/user.id/projects) & groups (/api/v4/groups, /api/v4/groups/group_id/projects). In this version that requests replaced with paginated retrieving all projects with your membership (/api/v4/projects/?membership=true).
  • add pagination for retrieving projects list as Gitlab's max per_page value is set to 100
  • fix & improve calculating of result folder. It was incorrect when you use custom Gitlab URL.
  • fix Gitlab asked for creds even if you gave it token
  • remove --verbose flag and enable verbosity (without sensitive information) by default

[!] Please note, that in this fork Gitlab's credentials (username+token) will be stored in repo's remote url for every backed up repo, e.g.

git remote -v
origin https://username:token@gitlab.com/group/project.git (fetch)
origin https://username:token@gitlab.com/group/project.git (push)

How to Backup

Backup using http (default)

npm install -g gitlab-backup-util-harduino
gitlab-backup-util-harduino -t 'your-gl-token-here'

Backup using ssh

gitlab-backup-util-harduino -t 'your-gl-token-here' -m ssh

Future Scope

    • [✔] If the repository already exists, git pull instead of cloning
    • [ ] Gui for entering token

Thats It 🚀, Now go backup

Readme

Keywords

none

Package Sidebar

Install

npm i gitlab-backup-util-harduino

Weekly Downloads

1

Version

2.0.1

License

Apache-2.0

Unpacked Size

8.27 kB

Total Files

7

Last publish

Collaborators

  • harduino