se modifica readme

This commit is contained in:
2025-08-16 03:27:56 -03:00
parent 025b9f1541
commit 4e3ba2bb2a

116
README.md
View File

@ -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 ```bash
chmod +x desinstalar-subir.sh
./instalar-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 Al finalizar, podrás usar el comando:
Las credenciales pueden guardarse cifradas con openssl.
Se descifran al ejecutar git subir mediante contraseña. bash
git subir
🧹 Desinstalación 🧹 Desinstalación
bash bash
chmod +x ./desinstalar-subir.sh
./desinstalar-subir.sh ./desinstalar-subir.sh
Elimina el comando, el script y las credenciales. Esto elimina:
✨ Funcionalidades de git subir El alias git subir
Detecta cambios sin commitear y ofrece hacer commit automático.
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 Detecta si hay cambios sin commitear:
openssl
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 🧠 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 🛡️ Licencia
Este proyecto puede ser usado, modificado y distribuido libremente bajo los términos que defina su autor.
---
¿Querés que también agregue una opción en el instalador para instalar el comando solo