And test cases for that check, as well as for an error if no prefix is
specified at all.
if [ -z "$prefix" ]; then
die "You must provide the --prefix option."
fi
+
+if [ "$command" = "split" -a """"! -e "$prefix" ]; then
+ die "$prefix does not exist."
+fi
+
dir="$(dirname "$prefix/.")"
if [ "$command" != "pull" ]; then
git branch pre-split
check_equal "$(last_commit_message)" "Merge commit '$(git rev-parse sub2)' into mainline"
+# Check that prefix argument is required for split (exits with warning and exit status = 1)
+! result=$(git subtree split 2>&1)
+check_equal "You must provide the --prefix option." "$result"
+
+# Check that the <prefix> exists for a split.
+! result=$(git subtree split --prefix=non-existent-directory 2>&1)
+check_equal "non-existent-directory does not exist." "$result"
+
# check if --message works for split+rejoin
spl1=$(git subtree split --annotate='*' --prefix subdir --onto FETCH_HEAD --message "Split & rejoin" --rejoin)
echo "spl1={$spl1}"