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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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