-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathformatear.sh
executable file
·95 lines (70 loc) · 2.21 KB
/
formatear.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#!/bin/sh
# Lima Limon Abril 2023
# https://github.com/lima-limon-inc/FormateadorJava
which astyle &> /dev/null
tenesAstyle=$(echo $?)
if [ ${tenesAstyle} -ne 0 ]
then
echo "No tenes astyle"
echo "Instalalo con "
#Necesito feedback de si esto funciona en todas las distros. PR con
#distros y sus package manager mas que bienvenidos
distroName=$(grep -Po '^NAME=\K[[:alpha:]]{1,}' /etc/os-release)
case "${distroName}" in
"Ubuntu") echo "apt install astyle" ;; #Confirmar
"Fedora") echo "dnf install astyle" ;; #Confirmar
"Arch Linux") echo "pacman -S astyle" ;; #Confirmar
"Gentoo") echo "emerge --ask astyle" ;;
*) echo "paciencia" ;;
esac
echo "Instalalo antes de seguir"
exit 2
fi
archivosSinComitear=$(git status -s | wc -l)
if [ ${archivosSinComitear} -ne 0 ]
then
echo "Tenes cosas sin comitear"
echo "Este script esta pensando para ser usado como unico commit"
echo "Deja todo comiteado y despues podes correr este programa."
exit 2
fi
echo "Formateo los archivos main"
astyle src/main/java/* &> /dev/null
archivosABorrar=$(find src/main/java/ -type f -name "*.orig" | wc -l)
echo "Formatee ${archivosABorrar} archivos"
if [ ${archivosABorrar} -ne 0 ]
then
echo "Borro los archivos viejos de main"
rm src/main/java/*.orig &> /dev/null
fi
echo "Formateo los archivos test"
astyle src/test/java/* &> /dev/null
archivosABorrar=$(find src/test/java/ -type f -name "*.orig" | wc -l)
echo "Formatee ${archivosABorrar} archivos"
if [ ${archivosABorrar} -ne 0 ]
then
echo "Borro los archivos viejos de test"
rm src/test/java/*.orig &> /dev/null
fi
seCambioAlgo=$(git diff | wc -l)
if [ ${seCambioAlgo} -eq 0 ]
then
echo "Nada fue formateado"
echo "No hago mas"
exit 2
fi
echo "Hago el commit de los archivos formateos"
git add .
git commit -m "Commit de formateo, nada de codigo cambiando"
hashCommit=$(git rev-parse HEAD)
firmaFormateo="Formateo del codigo"
fechaYFirma+="# "
fechaYFirma+=$(git config user.name)
fechaYFirma+=" | "
fechaYFirma+=$(date)
echo ${fechaYFirma} >> .git-blame-ignore-revs
echo ${hashCommit} >> .git-blame-ignore-revs
echo "" >> .git-blame-ignore-revs
echo "Hago el commit de lo anadido al archivo .git-blame-ignore-revs"
git add .
git commit -m "Anado hash a .git-blame-ignore-revs"