From 056047da79112036b8f802dacdf4a2ed125d8e67 Mon Sep 17 00:00:00 2001 From: nbaglietto Date: Sat, 16 Aug 2025 02:34:27 -0300 Subject: [PATCH] segundo comit --- README.md | 78 +++++++++++++++++++++++++++++++++++++++++++++++ instalar-subir.sh | 2 +- 2 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..66ccbde --- /dev/null +++ b/README.md @@ -0,0 +1,78 @@ +# 🚀 Comando `git subir` + +Este script automatiza el proceso de subir cambios a un repositorio Gitea, manejando credenciales, commits, conflictos y merges de forma inteligente. Se instala como un comando global llamado `git subir`, que podés usar desde cualquier repositorio Git. + +--- + +## 🧩 Funcionalidades + +- ✅ Verifica que estés dentro de un repositorio Git. +- 🔐 Solicita usuario y contraseña/token de Gitea. +- 📦 Detecta cambios sin commitear y ofrece hacer commit automático. +- 🔄 Maneja conflictos entre el repositorio local y remoto. +- 🔀 Realiza merge automático si hay conflictos. +- 🧠 Reintenta el `push` después de resolver conflictos. +- 🛠️ Se instala globalmente como comando `git subir`. + +--- + +## 🛠️ Instalación + +### 1. Guardá el instalador + +Copiá el script de instalación en un archivo llamado `instalar-subir.sh`. + +### 2. Asigná permisos y ejecutalo + +```bash +chmod +x instalar-subir.sh +./instalar-subir.sh + +Esto hará lo siguiente: +📁 Crea la carpeta ~/.scripts si no existe. + +📄 Copia el script funcional como git-subir dentro de esa carpeta. + +🔓 Le da permisos de ejecución. + +🛣️ Agrega ~/.scripts al PATH si no está. + +Uso: +Desde cualquier repositorio Git, simplemente ejecutá: + +bash +git subir + +El script te guiará paso a paso: + +🔐 Te pedirá tus credenciales de Gitea. + +📦 Detectará si hay cambios sin commitear y te ofrecerá hacer commit. + +🚀 Intentará hacer push al repositorio remoto. + +🔄 Si el push falla por historial diferente, hará pull con --allow-unrelated-histories. + +⚔️ Si hay conflictos, te mostrará los archivos afectados y te preguntará si querés hacer un merge automático. + +✅ Reintentará el push después de resolver conflictos. +Requisitos +Tener Git instalado. + +Tener acceso a un repositorio remoto en Gitea. + +Estar dentro de un repositorio Git local al ejecutar el comando. + +🧼 Desinstalación +Si querés eliminar el comando: + +bash +rm ~/.scripts/git-subir +Y si querés quitar la carpeta del PATH, podés editar tu ~/.bashrc o ~/.zshrc y eliminar la línea: + +bash + +export PATH="$HOME/.scripts:$PATH" + +📬 Autor +Este script fue creado por Nahuel Baglietto para automatizar flujos de trabajo con Gitea. ¿Tenés sugerencias o querés mejorarlo? ¡Contribuciones bienvenidas! diff --git a/instalar-subir.sh b/instalar-subir.sh index 3e4f63c..0e1237c 100755 --- a/instalar-subir.sh +++ b/instalar-subir.sh @@ -69,7 +69,7 @@ git push origin $BRANCH if [ $? -ne 0 ]; then echo "" echo "⚠️ Push fallido. Intentando pull con --allow-unrelated-histories..." - git pull origin $BRANCH --allow-unrelated-histories + git pull --no-rebase origin $BRANCH --allow-unrelated-histories if [ $? -eq 0 ]; then echo ""