# 馃殌 git-subir Script CLI para automatizar el push de cambios a repositorios Gitea con autenticaci贸n segura, configuraci贸n autom谩tica de remotos, commits interactivos, recuperaci贸n ante errores y cifrado opcional de credenciales. --- ## 馃摝 Archivos incluidos | Archivo | Descripci贸n | |------------------------|-----------------------------------------------------------------------------| | `instalar-subir.sh` | Instalador interactivo que configura credenciales, instala el comando global `git-subir` y valida entorno. | | `git-subir` | Script principal que automatiza el flujo de push, commits, configuraci贸n de remotos y recuperaci贸n ante errores. | | `desinstalar-subir.sh` | Elimina el binario instalado y la configuraci贸n/credenciales guardadas. | --- ## 馃敡 Requisitos - Bash 4+ - Git instalado y configurado - `curl`, `jq`, `openssl` disponibles en el sistema - Acceso a un servidor Gitea con token o usuario/contrase帽a v谩lidos - Carpeta `~/.local/bin` incluida en el `$PATH` --- ## 馃И Instalaci贸n ```bash chmod +x instalar-subir.sh ./instalar-subir.sh Durante la instalaci贸n se te pedir谩: URL base del servidor Gitea (ej: https://gitea.midominio.com) Usuario y contrase帽a o token Si quer茅s cifrar las credenciales (usando AES-256-CBC con PBKDF2) Confirmaci贸n para instalar git-subir como comando global El script valida las credenciales contra la API de Gitea antes de continuar. 馃殌 Uso Una vez instalado, pod茅s usar git-subir desde cualquier repositorio git: bash git-subir El script realiza: Carga y descifrado de credenciales (si est谩n cifradas) Verificaci贸n de cambios sin commitear Commit autom谩tico si lo autoriz谩s Verificaci贸n de configuraci贸n del remote origin Push al repositorio remoto Si el push falla, intenta git pull --rebase y reintenta 馃攣 Reconfigurar credenciales Pod茅s ejecutar: bash git-subir --reconfigurar Esto permite: Cambiar usuario/contrase帽a o token Elegir si quer茅s cifrar o guardar en texto plano Validar nuevamente contra la API Reescribir la configuraci贸n en ~/.config/git-subir/ 馃攼 Seguridad Cifrado con openssl usando AES-256-CBC y derivaci贸n PBKDF2 La contrase帽a de cifrado nunca se guarda Los archivos se almacenan en ~/.config/git-subir/ para mantener orden El binario se instala en ~/.local/bin/git-subir para uso global 馃Ч Desinstalaci贸n bash chmod +x desinstalar-subir.sh ./desinstalar-subir.sh Esto elimina: El binario git-subir de ~/.local/bin Las credenciales y configuraci贸n de ~/.config/git-subir 馃 Autor Nahuel Baglietto