Ось функція bash, яка буде друкувати ім’я сховища (якщо воно було правильно налаштовано):
__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
}
Пояснення:
local gitdir=$(git rev-parse --git-dir)
Це виконується git rev-parse --git-dir
, який виводить повний шлях до .git
каталогу сховища поточних даних. Він зберігає шлях в $gitdir
.
if [ $(cat ${gitdir}/description) != "..." ]; then
Це виконується cat ${gitdir}/description
, який друкує вміст .git/description
вашого поточного сховища. Якщо ви правильно назвали своє сховище, воно надрукує ім’я. Інакше він надрукуєUnnamed repository; edit this file 'description' to name the repository.
cat ${gitdir}/description
Якщо репо було названо правильно, то надрукуйте вміст.
else
Інакше ...
echo "Unnamed repository!"
Повідомте користувачеві, що РЕПО було без назви.
Щось подібне реалізовано в цьому сценарії .