summaryrefslogtreecommitdiff
path: root/modules/files/commit.sh
diff options
context:
space:
mode:
Diffstat (limited to 'modules/files/commit.sh')
-rw-r--r--modules/files/commit.sh59
1 files changed, 35 insertions, 24 deletions
diff --git a/modules/files/commit.sh b/modules/files/commit.sh
index 0bb8233..70573a6 100644
--- a/modules/files/commit.sh
+++ b/modules/files/commit.sh
@@ -1,27 +1,38 @@
-#!/bin/sh
-name='commit'
-ver=0.9
-# Copyright (C) 2009-2010 Luke Shumaker
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; see the file COPYING.
-# If not, see <http://www.gnu.org/licenses>.
+#!/usr/bin/env bash
+# rvs inner.sh - The main RVS program
+# Copyright (C) 2009-2010, 2015 Luke Shumaker
+#
+# This file is part of rvs.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-. "$LIBDIR/@ID@/stdio"
+. "$(dirname "$0")/_stdio.sh"
-usage="[FILE]"
-file=${1-.} # take arg1 as the file, default to the current directory
-
-type=`"$RVS" file-gettype "$file"`
-"$RVS" "commit.$type" "$file"
+if [[ $# -lt 1 ]]; then
+ set -- .
+fi
+for file in "$@"; do
+ local type
+ if test -L "$file"; then
+ type=l
+ elif test -f "$file"; then
+ type=f
+ elif test -d "$file"; then
+ type=d
+ else
+ error 'Unsupported file type: %s' "$file"
+ fi
+ "$RVS" "commit.$type" "$file"
+done