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
- Log in to your GitLab instance
- Go to Settings > Access Tokens
- Create a new personal access token with
apiscope - Copy the token and use it with the
--tokenargument
Getting a Group ID
You can find the group ID in GitLab:
- Go to your group's page
- The group ID is shown in the group information panel
- 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
Release history Release notifications | RSS feed
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)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
166115beefc8c650256521af13f2d51baf2ef02a396af7f38ffe259a2253510c
|
|
| MD5 |
7721ec8021c9206340dc189860f88c93
|
|
| BLAKE2b-256 |
eb27d571eb5b4168f1d071ba115ee37779ac196e038e2dcde4a6c2cadca832e5
|
File details
Details for the file git_clone_group-1.0.0-py3-none-any.whl.
File metadata
- Download URL: git_clone_group-1.0.0-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e296f90cc77ea8e67d4eb1b2822acd14d98c16b3b11d2d4260d7de59390c3a7
|
|
| MD5 |
70d0275729ec15d740982cfb3a022d91
|
|
| BLAKE2b-256 |
3ad896a374648ee81119aa9ea7f4e47a1a79f5a0f1d17a81cf86845515470886
|