29 lines
530 B
Bash
Executable File
29 lines
530 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
git_root() {
|
|
git rev-parse --show-toplevel
|
|
}
|
|
|
|
# get the relative path of current path according to root of repo
|
|
git_root_relative() {
|
|
rel=$(git rev-parse --show-prefix)
|
|
if [ -z "$rel" ]; then
|
|
# git rev-parse --show-prefix will output empty string when we are in the root dir
|
|
echo "."
|
|
else
|
|
echo "$rel"
|
|
fi
|
|
}
|
|
|
|
if test $# -eq 0; then
|
|
git_root
|
|
else
|
|
case "$1" in
|
|
-r|--relative)
|
|
git_root_relative
|
|
;;
|
|
*)
|
|
git_root
|
|
;;
|
|
esac
|
|
fi |