Comprueba el estado de múltiples repositorios de git con este script

Con este script de bash podrás comprobar el estado de varios repositorios de git en tu equipo sin necesidad de entrar en cada uno para ver en qué estado se encuentran

Tengo una carpeta en mi equipo con todos los repositorios de git en los que hago cosas y con este scipt puedo saber de una vez el estado en el que se encuentran sin necesidad de entrar en cada uno de ellos y ejecutar el comando git status.

Ejecutando este script en bash, puedo saber si un repositorio está al día respecto de la rama master, si está modificado, si está a falta de hacer push de los cambios, si tiene archivos sin seguimiento por parte de git o si simplemente no es una carpeta de git.

El script comprueba ese estado de los repositorios y ofrece un comentario en dos líneas conciso y resaltado por colores por cada uno de ellos con el estado en el que están además de incluir el nombre de la rama.

En mi caso tengo los repositorios de git agrupados en una carpeta en mi home llamada git. Ejecutando este script en esa misma ruta me hace una comprobación rápida de todas las carpetas. De manera predeterminada toma la ruta de la carpeta en la que está, pero se le puede indicar la ruta de otra carpeta.

Si quieres probarlo, descárgalo desde el repositorio de GitHub, guarda el script y dale permisos de ejecución y ejecútalo en tu equipo para probarlo:

wet https://raw.githubusercontent.com/victoriadrake/git-rundown/master/git-rundown.sh
chmod +x git-rundown.sh
./git-rundown.sh

El script original desarrollado por una programadora llamada Victoria Drake no me funcionaba, porque el script buscaba unas cadenas de texto en inglés y mi equipo está configurado en Español y git me daba esos comentarios en ese idioma y por eso no encontraba nada.

Así que me decidí a adaptarlo un poco y hacer que el script comprobase la variable global $LANG y en función del valor de esa variable buscar unas cadenas y mostrar los mensajes en un idioma u otro.

Modifiqué el script y le envié un PR a la desarrolladora y lo aceptó y después de solucionar algún problemila, hora el script funciona para idiomas en_US-utf8 y es_ES-utf8. Si quieres probarlo en tu equipo ejecuta en una consola:

echo $LANG

Si el valor que devuelve est alguno de las opciones soportadas funcionará, si no pues tendrás que adaptarlo, añadiendo al comando case tu opción del valor de la variable $LANG en tu equipo y modificar los textos de las variables que el escript busca y muestra. Y si lo haces te pediría que aportases ese cambio al repositorio original y así aportar tu cambio y que sea útil a otras personas.

Enlaces de interés

Me gustaría saber tu opinión. Deja un comentario (Puedes usar MarkDown)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios .