{"id":19075786,"url":"https://github.com/lpsm-dev/gitlabrc","last_synced_at":"2025-10-23T17:44:30.340Z","repository":{"id":37025173,"uuid":"282897733","full_name":"lpsm-dev/gitlabrc","owner":"lpsm-dev","description":"✔️ GitLabRC - Recursive clone all projects into a namespace (group) in GitLab Server","archived":false,"fork":false,"pushed_at":"2025-04-27T18:46:28.000Z","size":203,"stargazers_count":7,"open_issues_count":6,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-04-30T00:12:42.423Z","etag":null,"topics":["automation","git","git-clone","gitlab","python","python-setup"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lpsm-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-07-27T12:54:11.000Z","updated_at":"2025-03-09T14:07:36.000Z","dependencies_parsed_at":"2023-07-26T11:16:15.616Z","dependency_job_id":"e1774408-5acc-4c87-8ebc-2793bdda05d1","html_url":"https://github.com/lpsm-dev/gitlabrc","commit_stats":null,"previous_names":["lpmatos/gitlabrc"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpsm-dev%2Fgitlabrc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpsm-dev%2Fgitlabrc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpsm-dev%2Fgitlabrc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpsm-dev%2Fgitlabrc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lpsm-dev","download_url":"https://codeload.github.com/lpsm-dev/gitlabrc/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251602831,"owners_count":21615969,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","git","git-clone","gitlab","python","python-setup"],"created_at":"2024-11-09T01:56:00.223Z","updated_at":"2025-10-23T17:44:30.250Z","avatar_url":"https://github.com/lpsm-dev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- BEGIN_DOCS --\u003e\n\u003cdiv align=\"center\"\u003e\n\n\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\nHello Human 👽! Bem-vindo ao meu repositório 👋\n\n\u003cimg alt=\"terraform\" src=\"https://natanfelles.github.io/assets/img_posts/gitlab.png\" width=\"250px\" float=\"center\"/\u003e\n\nRecursive clone all projects into a namespace (group) in GitLab Server\n\n[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](https://www.conventionalcommits.org/en/v1.0.0/)\n[![Semantic Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://semantic-release.gitbook.io/semantic-release/usage/configuration)\n[![Built with Devbox](https://jetpack.io/img/devbox/shield_galaxy.svg)](https://jetpack.io/devbox/docs/contributor-quickstart/)\n\n\u003c/div\u003e\n\n# Sumário\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eExpandir\u003c/strong\u003e\u003c/summary\u003e\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n- [Visão Geral](#vis%C3%A3o-geral)\n  - [Objetivo](#objetivo)\n  - [Contexto e Motivação](#contexto-e-motiva%C3%A7%C3%A3o)\n- [Features](#features)\n- [Requirements](#requirements)\n- [Como Instalar?](#como-instalar)\n- [Como Usar?](#como-usar)\n- [Contribuição](#contribui%C3%A7%C3%A3o)\n- [Versionamento](#versionamento)\n- [Troubleshooting](#troubleshooting)\n- [Show your support](#show-your-support)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c/details\u003e\n\n# Visão Geral\n\n## Objetivo\n\nNesse repositório, apresento para vocês um CLI que facilita o clone de projetos do GitLab de forma recursiva.\n\n## Contexto e Motivação\n\nNo dia a dia, muitas vezes precisamos clonar projetos do GitLab para nossa máquina local. Isso pode ser um processo tedioso e repetitivo, especialmente quando precisamos clonar vários projetos em diferentes grupos. Para facilitar esse processo, desenvolvi um CLI que permite clonar projetos do GitLab de forma recursiva.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Features\n\n- Lidar com a autenticação da API do GitLab usando tokens de acesso pessoal.\n- Buscar/Listar toda a estrutura de projetos/grupos recursivamente a partir de um grupo root do GitLab.\n- Exibir a estrutura de projetos/grupos em formato de árvore (dry-run).\n- Clonar o repositório de cada projeto para um diretório local.\n- Desativar a criação do grupo root no diretório local quando acontecer o clone.\n- Controlar a verbosidade do CLI para melhorar a experiência do usuário.\n- Permitir utilizar os métodos HTTPS e SSH para clonar projetos.\n- Customizar o diretório local onde os projetos serão clonados.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Requirements\n\n- Python \u003e= 3.8\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Como Instalar?\n\n```bash\npip install -r requirements.txt --break-system-packages\npip install --break-system-packages .\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Como Usar?\n\n\u003e [!WARNING]\n\u003e\n\u003e - Certifique-se de que o seu token da API do GitLab (gitlab_token) tem as permissões necessárias para ler as informações do grupo e do projeto.\n\u003e - Ajuste o URL base do GitLab (gitlab_base_url) de acordo com a versão e a configuração da API da sua instância do GitLab.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Contribuição\n\nGostaria de contribuir? Isso é ótimo! Temos um guia de contribuição para te ajudar. Clique [aqui](CONTRIBUTING.md) para lê-lo.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Versionamento\n\nPara verificar o histórico de mudanças, acesse o arquivo [**CHANGELOG.md**](CHANGELOG.md).\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Troubleshooting\n\nSe você tiver algum problema, abra uma [issue](https://github.com/lpsm-dev/gitlabrc/issues/new/choose) nesse projeto.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n# Show your support\n\n\u003cdiv align=\"center\"\u003e\n\nDê uma ⭐️ para este projeto se ele te ajudou!\n\n\u003cimg src=\"https://github.com/lpsm-dev/lpsm-dev/blob/0062b174ec9877e6dfc78817f314b4a0690f63ff/.github/assets/yoda.gif\" width=\"225\"/\u003e\n\n\u003cbr\u003e\n\u003cbr\u003e\n\nFeito com 💜 pelo **Time de DevOps** :wave: inspirado no [readme-md-generator](https://github.com/kefranabg/readme-md-generator)\n\n\u003c/div\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\u003c!-- END_DOCS --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flpsm-dev%2Fgitlabrc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flpsm-dev%2Fgitlabrc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flpsm-dev%2Fgitlabrc/lists"}