Skip to main content

Clone all projects in Gitlab account by group at once.

Project description

                    Python GitHub Issues Contributions welcome License


Gitlab-Backup-Logo

Gitlab Backup Tool

Clone all projects in Gitlab account by group at once.
Report Bug · Request Feature

Table of Contents

TLDR; The last stand before sanctions...

tweet

Five days ago #gitlab blocked #Iranians’ access without prior notice! and today we faced with a BIG surprise from GitLab! Blocking our Accounts! #discrimination pic.twitter.com/7Dk6E8Yo0L

— Ahmad Haghighi (@haghighi_ahmad) October 8, 2020

In last days, GitLab has decided to block Iranian accounts from contributing and being part of the open-source ecosystem.
They didn't send any messages before this decision and our codes and projects have been locked!

"Although we understand GitLab might make this decision under the pressure of the US government, we were expecting a more respectful action from GitLab.

GitLab blocked our access to private repositories suddenly, but at the very least we wanted GitLab to warn us before limiting our access.

GitLab decided to take one step further and ban every user that used Iran's IP address somewhere their history no matter where she/he is living, while they could just restrict access by IP address like other US-based companies. This action is a kind of ban by nationality.

Let us download our private repositories and gists and also make them public (setting control).

Some text above belong here but repeated again: https://github.com/1995parham/github-do-not-ban-us

Getting Started

You just get the GitLab token and put in this script.

Prerequisites

This tool wrote in python language, so it needs:

  • python3 or above (with pip)

Installation

$ pip install gitlab-bk

Usage

At first, you have to get GITLAB_PERSONAL_ACCESS_TOKEN from here.

Ensure to check all scopes.

gitlab-pac-page

For more examples, please refer to the GitLab Official Documentation.

Then run script:

gitlab-usage-example

You can use with advanced options:

Usage: gitlab-bk [-t str] [--verbose] [-u str] [-o str] [-m str] [-v] [-h]

Gitlab backup tool, clone all project at once!

Required arguments:
  -t str, --token str   Gitlab personal access token

Optional arguments:
  --verbose             Enable verbose output
  -u str, --url str     Specify Gitlab instance URL
  -m str, --method str  Specify clone method (default is "http")
  -o str, --output str  Output directory (default is "./gitlab-backup")
  -v, --version         Show program's version number and exit
  -h, --help            Show this message and exit.

License

Distributed under the MIT License. See LICENSE for more information.

Contact

The easiest way to contact me is by sending me an email. But you have several other options available, too.

Twitter Linkedin Telegram Instagram

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitlab-bk-0.0.1.tar.gz (197.2 kB view details)

Uploaded Source

Built Distribution

gitlab_bk-0.0.1-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file gitlab-bk-0.0.1.tar.gz.

File metadata

  • Download URL: gitlab-bk-0.0.1.tar.gz
  • Upload date:
  • Size: 197.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.9

File hashes

Hashes for gitlab-bk-0.0.1.tar.gz
Algorithm Hash digest
SHA256 b53821bb2ee956cefce3f649012fdf96377452c4439def7e60463ea7b16e0db7
MD5 468314585e29999ed1a97dd09447126f
BLAKE2b-256 2e289cc6bbffd030f7c335b2922b82627252a9d54d9e0f29fdf7f3b05cb44f30

See more details on using hashes here.

File details

Details for the file gitlab_bk-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: gitlab_bk-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.9

File hashes

Hashes for gitlab_bk-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 04bfd9344a1c48c29bc5ff31bb72ca3ee42c15248d772514ef55911ecaec3a37
MD5 173e9de9b51369dbaec0a9c9bf0a5118
BLAKE2b-256 be20aa134533640894b3c40fd4027f03e1e1615e3a5ed02db81589fea42a2f34

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page