summaryrefslogtreecommitdiff
path: root/.zsh/functions
diff options
context:
space:
mode:
authorRené Neumann <rene.neumann@in.tum.de>2012-02-23 19:02:25 +0100
committerRené Neumann <rene.neumann@in.tum.de>2012-02-23 19:02:26 +0100
commit1c7cc1c8293a2243d9f41a03f2401e793bf1a4f2 (patch)
tree96ad0bcbd212f5db1fc15063d5a18d79aa58e8aa /.zsh/functions
parentc538380ef3915c9c1adc036fc8d2292331898fc9 (diff)
downloaddotfiles-1c7cc1c8293a2243d9f41a03f2401e793bf1a4f2.tar.gz
dotfiles-1c7cc1c8293a2243d9f41a03f2401e793bf1a4f2.tar.bz2
dotfiles-1c7cc1c8293a2243d9f41a03f2401e793bf1a4f2.zip
Port cci to new stgit version
Diffstat (limited to '.zsh/functions')
-rw-r--r--.zsh/functions/cci18
1 files changed, 15 insertions, 3 deletions
diff --git a/.zsh/functions/cci b/.zsh/functions/cci
index 4baaa7d..6d10917 100644
--- a/.zsh/functions/cci
+++ b/.zsh/functions/cci
@@ -13,6 +13,11 @@ _ask_$0 ()
fi
}
+_stg_v_$0 ()
+{
+ python -c 'from stgit.builtin_version import version; print version'
+}
+
if [[ $# == 0 ]]; then
echo "No message given. Aborting."
return 1
@@ -55,7 +60,14 @@ if [[ -z $(cstg files) ]]; then
fi
echo ">> Committing"
-cstg commit $tok
+cstg commit $tok || return
+
+# from 0.16 onwards stg repushes the patches ... pop them again
+# this is needed to make the `config push` work
+if is-at-least 0.16 $(_stg_v_$0); then
+ echo ">>> Popping patches, stg thought it had to re-apply"
+ cstg pop -a -k || return
+fi
if [[ -n $(cstg series --applied) ]]; then
echo
@@ -65,10 +77,10 @@ if [[ -n $(cstg series --applied) ]]; then
fi
echo ">> Pushing to remote"
-config push
+config push || return
echo ">> Re-apply patches"
-cstg push -a -k
+cstg push -a -k || return
echo ">> Done"