这是一个 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
如果 repo 命名正确,则打印内容。
else
除此以外...
echo "Unnamed repository!"
告诉用户该 repo 未命名。
在这个脚本中实现了类似的东西。