diff --git a/jka-toolkit/gitdit b/jka-toolkit/gitdit index fce9a71..3563542 100755 --- a/jka-toolkit/gitdit +++ b/jka-toolkit/gitdit @@ -1,6 +1,6 @@ #!/bin/bash VERSION="0.1.3" -gitopt=`dialog --stdout --scrollbar --menu "gitdit - Git DIalog inTerface" 0 0 6 p "Descargar actualizaciones del git (Hacer pull)" s "Subir actualizaciones al git (Hacer push)" c "Descargar un nuevo git (Hacer clone)" b "Cambiar de branch/rama (Hacer checkout)" m "Unir ramas (Hacer merge)"` +gitopt=`dialog --stdout --scrollbar --menu "gitdit - Git DIalog inTerface" 0 0 6 p "Descargar actualizaciones del git (Hacer pull)" t "Confirmar cambios sin subida" s "Subir actualizaciones al git (Hacer push)" c "Descargar un nuevo git (Hacer clone)" n "Crear nueva rama" b "Cambiar de branch/rama (Hacer checkout)" m "Unir ramas (Hacer merge)"` actual="origin $(git branch --list | grep "^*" | cut -f1 -d" ")" case $gitopt in "p") git pull $actual;; @@ -14,6 +14,13 @@ case $gitopt in giturl=`dialog --stdout --inputbox "URL del git" 10 60` git clone $giturl ;; + "t") + commit=`dialog --stdout --inputbox "Cambios (texto commit)" 10 50 "changes"` + if [[ -z $commit ]];then + commit="changes" + fi + git add . && git commit -m "$commit" + ;; "b") j=0 rama="" @@ -25,17 +32,32 @@ case $gitopt in let j++ fi done - ramificacion=`dialog --stdout --scrollbar --menu "Selecione la rama" 0 0 6 $rama` - git checkout ${lista[$ramificacion]} + ramificacion=`dialog --stdout --scrollbar --menu "Selecione la rama a saltar" 0 0 6 $rama` + if [ ! -z $ramificacion ];then + git checkout ${lista[$ramificacion]} + fi + ;; + "n") + NewBranch=`dialog --stdout --inputbox "Nombre de la nueva rama" 10 50 "new branch"` + if [ ! -z $NewBranch ];then + git checkout -b $NewBranch + fi ;; "m") - until [[ $gitbusing && $gitbmerge ]] + j=0 + rama="" + for i in $(git branch --list | grep "^*" -v ) do - gitbusing=`dialog --stdout --inputbox "Rama actual" 10 60` - gitbmerge=`dialog --stdout --inputbox "Rama con la que unir (la final,normalmente master)" 10 60 "master"` + if [ $i != "*" ];then + rama="$rama $j $i" + lista[$j]=$i + let j++ + fi done - git checkout $gitbmerge - git merge $gitbusing - git push + merges=`dialog --stdout --scrollbar --menu "Selecione la rama a unir" 0 0 6 $rama` + if [ ! -z $merges ];then + git merge ${lista[$merges]} + git push + fi ;; esac