0721f1fc3ae46e778ed6358f7960345239c4bc74
Adds: - gitswarm.py: REPL interactivo con rich que escanea repos git de primer nivel, muestra estado (ahead/behind/dirty) y permite update <repo>|all via git pull --ff-only. - gitswarm: wrapper bash que invoca el venv local. - build.sh: compila a binario standalone con Nuitka --onefile. - requirements.txt: rich. - README.md: uso, requisitos del sistema (python3-dev, gcc, patchelf para el build) e instrucciones de desarrollo y compilacion.
gitswarm
Lista y actualiza repos git de primer nivel dentro de una carpeta. REPL interactivo con colores y tabla.
Uso
gitswarm /ruta/a/escanear
Te muestra una tabla con los repos detectados y entra a un prompt:
list/ls— vuelve a mostrar la tablarefresh/r— re-escanea haciendogit fetchupdate <repo>—git pull --ff-only(acepta nº, nombre exacto o fragmento)update all— actualiza todos los que estén behindhelp/?quit/q(también Ctrl-D / Ctrl-C)
El estado se calcula con git fetch al arrancar y al hacer refresh. update aborta si el repo tiene cambios locales sin commitear.
Requisitos en el sistema
Necesarios siempre:
python3(≥ 3.10)git
Para desarrollar (con venv y rich pip-installed):
python3-venv
Para compilar a binario con Nuitka (./build.sh):
python3-dev— cabecerasPython.hgcc— compilador Cpatchelf— necesario para el modo--onefileen Linux
En Debian/Ubuntu:
sudo apt install python3 python3-venv python3-dev git gcc patchelf
Desarrollo (con venv)
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
./gitswarm /ruta/a/escanear # wrapper que usa el venv
Compilar a binario standalone
./build.sh
Genera dist/gitswarm, un único ejecutable autocontenido (lleva Python + rich dentro). Para instalarlo en tu PATH:
cp dist/gitswarm ~/.local/bin/
Ficheros
gitswarm.py— script principalgitswarm— wrapper bash que invoca el venv local (para desarrollo)requirements.txt— dependencias Python (rich)build.sh— compila el binario con Nuitka.venv/— virtualenv local (no en git)dist/— binarios compilados (no en git)
Description