summaryrefslogtreecommitdiff
path: root/src/abslibre-tools/librecommit
diff options
context:
space:
mode:
authorJoshua I. Haase H. (xihh) <hahj87@gmail.com>2012-12-04 21:19:22 -0600
committerJoshua I. Haase H. (xihh) <hahj87@gmail.com>2012-12-04 21:19:22 -0600
commitacc2c792c423c5aa81aa95f0516de7724dba3ab9 (patch)
tree73cacea8eff5cdfd23f42b740597b5498d152509 /src/abslibre-tools/librecommit
parentd11741d73bbf6940c45ee0f2cadea980e9e40785 (diff)
parent098d7430e6447c4658704c3bcf88ea1ed7a5206b (diff)
Merge branch 'master' of gitpar:libretools
Conflicts: librechroot libremakepkg
Diffstat (limited to 'src/abslibre-tools/librecommit')
-rwxr-xr-xsrc/abslibre-tools/librecommit65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/abslibre-tools/librecommit b/src/abslibre-tools/librecommit
new file mode 100755
index 0000000..1698bed
--- /dev/null
+++ b/src/abslibre-tools/librecommit
@@ -0,0 +1,65 @@
+#!/bin/bash
+# Copyright 2010 Nicolás Reynolds
+
+# ---------- GNU General Public License 3 ----------
+
+# This file is part of Parabola.
+
+# Parabola 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 3 of the License, or
+# (at your option) any later version.
+
+# Parabola 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 Parabola. If not, see <http://www.gnu.org/licenses/>.
+
+source /etc/libretools.conf
+
+usage () {
+ echo "cd to the dir with the PKGBUILD you are commiting and"
+ echo
+ echo "$0 [optionally files to commit]"
+ echo
+ echo "This script commits the package using name, pkgver and pkgrel"
+ echo
+ exit 1
+}
+
+msg="Commiting libre package \"\$pkg-\$pkgver-\$pkgrel\""
+
+for opt in $@ ; do
+ case ${opt} in
+ -h) usage ;;
+ -m) shift; msg=${1}; shift ;;
+ *) files+="${1} " ; shift ;;
+ esac
+done
+
+if [ ! -e PKGBUILD -o -z "$files" ]; then usage; fi
+
+source PKGBUILD
+
+pkg=${pkgbase:-${pkgname}}
+
+msg=$(eval echo $msg)
+
+if [ "$COMMITCMD" = 'git' ]; then
+
+ ${COMMITCMD} add ${files} && ${COMMITCMD} commit -m "$(echo $msg)"
+
+elif [ "$COMMITCMD" = 'hg' ]; then
+
+ ${COMMITCMD} commit ${files} -m "$msg" -v || exit 1
+
+else
+
+ error "COMMITCMD is not correctly set on libretools.conf"
+
+fi
+
+exit 0