set -e
-# Only one vcsh instance at a time can have the work dir fully populated.
+# Only one vcsh instance at a time can have the working tree fully populated.
LOCKDIR=/run/lock/vcsh
# Kill the parent process because vcsh does not catch the hook exit value.
echo $PPID > "$LOCKDIR/pid"
# git read-tree manual page says this is the proper way to fully repopulate
-# the working directory
+# the working tree.
git config core.sparseCheckout true
rm -f "$GIT_DIR/info/sparse-checkout"
echo "/*" > "$GIT_DIR/info/sparse-checkout"
set -e
-# Only the same instance of vcsh that had the work dir fully populated is
+# Only the same instance of vcsh that had the working tree fully populated is
# allowed to repopulate it sparsely.
LOCKDIR=/run/lock/vcsh
[ -d "$LOCKDIR" ] || exit 0
. "$XDG_CONFIG_HOME/vcsh/hooks-available/sparse-checkout.sh"
git read-tree -mu HEAD
-# Unlock the work dir.
+# Unlock the working tree.
rm -rf "$LOCKDIR"
Many git commands (e.g. git-merge, git-checkout) will automatically use the
information in $GIT_DIR/info/sparse-checkout when dealing with files in the
-git work directory, so generally a calling git-read-tree explicitly is not
+git working tree, so generally a calling git-read-tree explicitly is not
needed.
However when the content of $GIT_DIR/info/sparse-checkout changes it is
necessary to call "git read-tree -mu HEAD" to update the content of the
-working directory.
+working tree.