From 4e3ba2bb2ae117605842fb464b3a5cb2e6ac7919 Mon Sep 17 00:00:00 2001 From: nbaglietto Date: Sat, 16 Aug 2025 03:27:56 -0300 Subject: [PATCH] se modifica readme --- README.md | 116 ++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 90 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index 2d641bd..6c652bd 100644 --- a/README.md +++ b/README.md @@ -1,55 +1,119 @@ -# 🛠️ git subir +# 🚀 git subir -Comando personalizado para subir cambios a un repositorio Gitea con autenticación automática, manejo de conflictos y commits interactivos. +Comando personalizado para automatizar el push de cambios a un repositorio Gitea. Incluye autenticación segura, commits interactivos, resolución de conflictos y configuración automatizada. --- -## 🚀 Instalación +## 📂 Archivos incluidos + +### `instalar-subir.sh` +Script de instalación que: + +- Verifica si `openssl` está instalado (y lo instala si falta). +- Solicita credenciales de Gitea: usuario, token/contraseña y URL base de la API. +- Verifica las credenciales contra la API de Gitea. +- Permite guardar las credenciales cifradas con `openssl` o en texto plano. +- Crea el script principal `git-subir.sh` en `~/.scripts/`. +- Genera un alias global `git subir` disponible en todo el sistema. + +### `git-subir.sh` +Script principal que: + +- Carga las credenciales (descifrándolas si están cifradas). +- Detecta cambios sin commitear y ofrece hacer commit automático. +- Realiza `git push` con autenticación embebida. +- Si el push falla, intenta `git pull --allow-unrelated-histories`. +- Detecta conflictos y ofrece hacer merge automático. +- Muestra mensajes claros y estructurados para guiar al usuario. + +### `desinstalar-subir.sh` +Script de desinstalación que: + +- Elimina el alias global `git subir`. +- Borra el script `git-subir.sh`. +- Elimina las credenciales guardadas (cifradas o no). + +--- + +## 🔐 Seguridad + +- Las credenciales pueden guardarse cifradas con `openssl` usando una contraseña definida por el usuario. +- El script `git-subir.sh` descifra las credenciales en tiempo de ejecución y las borra inmediatamente después de usarlas. +- Si se elige guardar sin cifrar, se almacenan en `~/.scripts/.env` con permisos restringidos (`chmod 600`). + +--- + +## 📦 Requisitos + +- `openssl` (se instala automáticamente si falta) +- Acceso a una instancia de Gitea con API habilitada +- Permisos de escritura en `/usr/local/bin` para crear el alias global + +--- + +## 🧪 Instalación ```bash +chmod +x desinstalar-subir.sh ./instalar-subir.sh -Verifica e instala openssl si falta. +Durante la instalación se te pedirá: -Solicita usuario y token de Gitea. +Usuario de Gitea -Verifica credenciales contra la API. +Token o contraseña -Permite guardar credenciales cifradas o en texto plano. +URL base de la API (ej: https://gitea.midominio.org) -Crea el comando global git subir. +Si querés guardar las credenciales cifradas -Seguridad -Las credenciales pueden guardarse cifradas con openssl. +Al finalizar, podrás usar el comando: -Se descifran al ejecutar git subir mediante contraseña. +bash +git subir 🧹 Desinstalación bash +chmod +x ./desinstalar-subir.sh ./desinstalar-subir.sh -Elimina el comando, el script y las credenciales. +Esto elimina: -✨ Funcionalidades de git subir -Detecta cambios sin commitear y ofrece hacer commit automático. +El alias git subir -Realiza git push con autenticación embebida. +El script git-subir.sh -Si el push falla, intenta git pull --allow-unrelated-histories. +Las credenciales guardadas -Detecta conflictos y ofrece merge automático. +🔄 Flujo de uso +Ejecutás git subir. -Muestra mensajes claros y estructurados. +El script carga las credenciales (descifradas si están cifradas). -📦 Requisitos -openssl +Detecta si hay cambios sin commitear: +Si hay, ofrece hacer commit automático. +Intenta hacer git push al repositorio remoto con autenticación embebida. + +Si el push falla: + +Intenta git pull --allow-unrelated-histories. + +Si hay conflictos, los muestra y ofrece hacer merge automático. + +Si todo sale bien, muestra 🎉 Push completado. + +💡 Ejemplo de uso +bash +git subir +Si hay cambios sin commitear, te preguntará si querés hacer commit. + +Si hay conflictos, te preguntará si querés hacer merge automático. + +Si todo está limpio, sube los cambios directamente. 🧠 Autor -Nahuel Baglietto — Scripts diseñados para mejorar la experiencia de trabajo con Git y Gitea. +Nahuel Baglietto Scripts diseñados para mejorar la experiencia de trabajo con Git y Gitea, priorizando seguridad, automatización y facilidad de uso. -Código - ---- - -¿Querés que también agregue una opción en el instalador para instalar el comando solo +🛡️ Licencia +Este proyecto puede ser usado, modificado y distribuido libremente bajo los términos que defina su autor.