Use git-rev-parse to get the git directory path

This commit is contained in:
Colin Hebert 2012-03-27 11:21:15 +01:00 committed by Sorin Ionescu
parent 937f365279
commit c435dca233

View file

@ -7,21 +7,9 @@
# Gets the path to the Git directory.
function _git-dir {
local git_root="$(git-root)"
local git_dir_or_file="${git_root}/.git"
local git_dir
local git_dir="${$(git rev-parse --git-dir):A}"
if [[ ! -d "$git_root" ]]; then
return 1
fi
if [[ -f "$git_dir_or_file" ]]; then
git_dir="${${${$(<"$git_dir_or_file")}[(fr)gitdir:*]}#gitdir: }"
else
git_dir="$git_dir_or_file"
fi
if [[ -d "$git_dir" ]]; then
if [[ -n "$git_dir" ]]; then
print "$git_dir"
return 0
fi