#!/bin/sh -e pull() { for d in `cheat -d | awk '{print $2}'`; do echo "Update $d" cd "$d" [ -d ".git" ] && git pull || : done echo echo "Finished update" } push() { for d in `cheat -d | grep -v "community" | awk '{print $2}'`; do cd "$d" if [ -d ".git" ] then echo "Push modifications $d" files=$(git ls-files -mo | tr '\n' ' ') git add -A && git commit -m "Edited files: $files" && git push || : else echo "$(pwd) is not a git managed folder" echo "First connect this to your personal git repository" fi done echo echo "Finished push operation" } if [ "$1" = "pull" ]; then pull elif [ "$1" = "push" ]; then push else echo "Usage: # pull changes cheatsheets pull # push changes cheatsheets push" fi