|
|
@ -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 |
|
|
|