}
SELF=$(basename $0)
-VERSION='1.20130829'
+VERSION='1.20130909'
fatal() {
echo "$SELF: fatal: $1" >&2
[ -z "$VCSH_GITIGNORE" ] && VCSH_GITIGNORE='exact'
[ -z "$VCSH_WORKTREE" ] && VCSH_WORKTREE='absolute'
+if [ ! "x$VCSH_GITIGNORE" = 'xexact' ] && [ ! "x$VCSH_GITIGNORE" = 'xnone' ] && [ ! "x$VCSH_GITIGNORE" = 'xrecursive' ]; then
+ fatal "'\$VCSH_GITIGNORE' must equal 'exact', 'none', or 'recursive'" 1
+fi
+
if [ ! "x$VCSH_WORKTREE" = 'xabsolute' ] && [ ! "x$VCSH_WORKTREE" = 'xrelative' ]; then
fatal "'\$VCSH_WORKTREE' must equal 'absolute', or 'relative'" 1
fi
file="$new"
done;
done | sort -u)
- tempfile=$(mktemp) || fatal "could not create tempfile" 51
+
+ # Contrary to GNU mktemp, mktemp on BSD/OSX requires a template for temp files
+ # Use the template GNU mktemo defaults to
+ tempfile=$(mktemp tmp.XXXXXXXXXX) || fatal "could not create tempfile" 51
+
echo '*' > "$tempfile" || fatal "could not write to '$tempfile'" 57
for gitignore in $gitignores; do
echo "$gitignore" | sed 's@^@!/@' >> "$tempfile" || fatal "could not write to '$tempfile'" 57
fatal "could not move '$tempfile' to '$VCSH_BASE/.gitignore.d/$VCSH_REPO_NAME'" 53
}
-if [ ! "x$VCSH_GITIGNORE" = 'xexact' ] && [ ! "x$VCSH_GITIGNORE" = 'xnone' ] && [ ! "x$VCSH_GITIGNORE" = 'xrecursive' ]; then
- fatal "'\$VCSH_GITIGNORE' must equal 'exact', 'none', or 'recursive'" 1
-fi
-
if [ "$1" = 'clone' ]; then
[ -z "$2" ] && fatal "$1: please specify a remote" 1
export VCSH_COMMAND="$1"
export GIT_DIR="$VCSH_REPO_D/$VCSH_REPO_NAME.git"
elif [ "$1" = 'version' ]; then
echo "$SELF $VERSION"
+ git version
exit
elif [ "$1" = 'which' ]; then
[ -z "$2" ] && fatal "$1: please specify a filename" 1