#!/bin/bash
+ORG_GREP='-e .org$ -e .org_archive$ -e .org_done$'
+
cd ~;
+emacsclient -n -e '(org-save-all-org-buffers)' >/dev/null 2>&1
+
for a in $(mr list |grep 'list:'|grep -v 'finished'|awk -F'list: ' '{print $2}' 2>/dev/null); do
(cd "$a";
- if mr --no-recurse status |grep '^ M'|grep -q '.org$'; then
- git commit -m'update org files' $(mr --no-recurse status |grep '^ M'|grep '.org$'|sed 's/^ M//g');
- git push;
+ if git status --porcelain|grep '^ M'|grep -q $ORG_GREP; then
+ git commit -m'update org files' $(mr --no-recurse status |grep '^ M'|grep $ORG_GREP|sed 's/^ M//g');
+ if [ "$1" != "commit" ]; then
+ git push;
+ fi;
fi;
);
done;