Ecco una funzione bash che stamperà il nome del repository (se è stato impostato correttamente):
__get_reponame ()
{
local gitdir=$(git rev-parse --git-dir)
if [ $(cat ${gitdir}/description) != "Unnamed repository; edit this file 'description' to name the repository." ]; then
cat ${gitdir}/description
else
echo "Unnamed repository!"
fi
}
Spiegazione:
local gitdir=$(git rev-parse --git-dir)
Questo viene eseguito git rev-parse --git-dir
, che stampa il percorso completo della .git
directory del repository corrente. Memorizza il percorso $gitdir
.
if [ $(cat ${gitdir}/description) != "..." ]; then
Questo viene eseguito cat ${gitdir}/description
, che stampa il contenuto del .git/description
repository corrente. Se hai nominato correttamente il tuo repository, verrà stampato un nome. Altrimenti, stamperàUnnamed repository; edit this file 'description' to name the repository.
cat ${gitdir}/description
Se il repository è stato nominato correttamente, quindi stampare il contenuto.
else
Altrimenti...
echo "Unnamed repository!"
Comunicare all'utente che il repository non era denominato.
Qualcosa di simile è implementato in questo script .