In some cases the working tree needs to be updated outside of
populate-sparsely.sh (which is meant for a post-enter hook), so split
out this task from the main script.
# shellcheck source=/dev/null
. "$XDG_CONFIG_HOME/vcsh/hooks-available/enable-sparse-checkout.sh"
-# Verify if the current branch is valid before updating the working tree.
-# This avoids errors with empty repositories which would only confuse the
-# user.
-if git rev-parse --verify HEAD >/dev/null 2>&1;
-then
- git read-tree -mu HEAD
-fi
+# shellcheck source=/dev/null
+. "$XDG_CONFIG_HOME/vcsh/hooks-available/update-working-tree.sh"
# Unlock the working tree.
rm -rf "$LOCKDIR"
--- /dev/null
+#!/bin/sh
+
+# Verify if the current branch is valid before updating the working tree.
+# This avoids errors with empty repositories which would only confuse the
+# user.
+if git rev-parse --verify HEAD >/dev/null 2>&1;
+then
+ git read-tree -mu HEAD
+fi
+