Skip to main content

clone all group projects from gitlab

Project description

git-clone-group

A command line tool to clone/pull all projects from GitLab groups and their subgroups.

Features

  • Clone all repositories from a GitLab group
  • Automatically handle subgroups
  • Pull updates for existing repositories
  • Show progress with nice progress bars
  • Support both HTTP and SSH URLs
  • Support private GitLab instances

Installation

You can install git-clone-group using pip:

pip install git-clone-group

Usage

Basic usage:

gcg -g GITLAB_ADDR -t TOKEN -i GROUP_ID [-d DEST_DIR]

Show help:

gcg -h

Examples:

# Clone all projects from group ID 123 to current directory
gcg -g gitlab.com -t glpat-xxxxxxxxxxxx -i 123

# Clone to a specific directory
gcg -g gitlab.com -t glpat-xxxxxxxxxxxx -i 123 -d /path/to/repos

# Clone from private GitLab instance
gcg -g git.company.com -t glpat-xxxxxxxxxxxx -i 456 -d ./projects

Getting a GitLab Access Token

  1. Log in to your GitLab instance
  2. Go to Settings > Access Tokens
  3. Create a new personal access token with api scope
  4. Copy the token and use it with the --token argument

Getting a Group ID

You can find the group ID in GitLab:

  1. Go to your group's page
  2. The group ID is shown in the group information panel
  3. Or look at the URL: https://gitlab.com/groups/your-group-name - the group ID will be visible in the group details

Notes

  • The tool will automatically handle nested subgroups
  • For existing repositories, it will perform a git pull
  • Progress bars show real-time cloning/pulling status
  • Both HTTP and SSH URLs are supported (SSH recommended)

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

git_clone_group-1.0.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

git_clone_group-1.0.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file git_clone_group-1.0.0.tar.gz.

File metadata

  • Download URL: git_clone_group-1.0.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for git_clone_group-1.0.0.tar.gz
Algorithm Hash digest
SHA256 166115beefc8c650256521af13f2d51baf2ef02a396af7f38ffe259a2253510c
MD5 7721ec8021c9206340dc189860f88c93
BLAKE2b-256 eb27d571eb5b4168f1d071ba115ee37779ac196e038e2dcde4a6c2cadca832e5

See more details on using hashes here.

File details

Details for the file git_clone_group-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for git_clone_group-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6e296f90cc77ea8e67d4eb1b2822acd14d98c16b3b11d2d4260d7de59390c3a7
MD5 70d0275729ec15d740982cfb3a022d91
BLAKE2b-256 3ad896a374648ee81119aa9ea7f4e47a1a79f5a0f1d17a81cf86845515470886

See more details on using hashes here.

Supported by

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