从脚本中,如何确定当前的GIT_DIR? 如果没有覆盖,它只是顶级目录或裸仓的顶级目录。
我想要类似的东西:
[/git/repo1/subdir]$ git show-git-dir
/git/repo1/.git
答案 0 :(得分:7)
可以使用rev-parse:
完成此操作git rev-parse --git-dir
答案 1 :(得分:0)
这是一个纯粹的bash版本,当你在root中时会找到该目录。 (顺便说一下,Ikke的解决方案更好)。
a=$PWD
while [ "$a" != "" ] && [ "$a" != '/' ];
do
a=`dirname $a`;
if [ -d $a/.git ];
then
echo "$a";
break;
fi
done
在Windows上,您可能需要添加另一个[“$ a”!='\']来测试该情况,我目前无法访问以查看Msysgit附带的bash shell是否支持“dirname” ”。
但是在Ubuntu的终结者中工作。