Use git-rev-parse to get the git directory path
This commit is contained in:
parent
937f365279
commit
c435dca233
|
@ -7,21 +7,9 @@
|
||||||
|
|
||||||
# Gets the path to the Git directory.
|
# Gets the path to the Git directory.
|
||||||
function _git-dir {
|
function _git-dir {
|
||||||
local git_root="$(git-root)"
|
local git_dir="${$(git rev-parse --git-dir):A}"
|
||||||
local git_dir_or_file="${git_root}/.git"
|
|
||||||
local git_dir
|
|
||||||
|
|
||||||
if [[ ! -d "$git_root" ]]; then
|
if [[ -n "$git_dir" ]]; 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
|
|
||||||
print "$git_dir"
|
print "$git_dir"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in a new issue