You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
535 B

3 years ago
#!/bin/sh
# commit the directory ($1) with a message ($2) to git
. shell-error
INIT=
if [ "$1" = "-i" ]; then
INIT=yes
shift
fi
[ -d "$1" ] || fatal "$1 is not an existing directory"
if type -t git >&/dev/null && pushd "$1" >/dev/null; then
if [ -z "$(git config --global user.name)" ]; then
exit 0
fi
if [ -n "$INIT" -a ! -d .git ]; then
git init -q || fatal "git init failed"
fi
if [ -n "$(git status -s)" ]; then
git add . \
&& git commit -anq -m "$2" \
|| fatal "git add/commit failed"
fi
popd >/dev/null
fi