exit 1
}
+# Make sure we are in the worktree, not under .git; die otherwise
+ensure_git_repo_or_die()
+{
+ local is_inside_repo is_inside_git_dir
+ is_inside_repo=1
+ is_inside_git_dir=$(git rev-parse --is-inside-git-dir 2>/dev/null) ||
+ is_inside_repo=0
+
+ case "$is_inside_repo/$is_inside_git_dir" in
+ 0*) die "Cannot run outside of a Git repository.";;
+ 1/true) die "Cannot run from inside \`.git\` hierarchy, please switch to work-tree.";;
+ esac
+}
+
# cat_file TOPIC:PATH [FROM]
# cat the file PATH from branch TOPIC when FROM is empty.
# FROM can be -i or -w, than the file will be from the index or worktree,
setup_pager
@cmddir@/tg-$1 -h 2>&1 || :
echo
- if [ -r "@sharedir@/tg-$1.txt" ] ; then
- cat "@sharedir@/tg-$1.txt"
+ if [ -r "@docdir@/tg-$1.txt" ] ; then
+ cat "@docdir@/tg-$1.txt"
fi
else
echo "`basename $0`: no help for $1" 1>&2
# check if we should run help and get the topic while we're at it
help_topic="$(should_do_help "$@")" && { do_help "$help_topic"; exit 0; }
+ensure_git_repo_or_die
+
## Initial setup
set -e