]> ruderich.org/simon Gitweb - config/dotfiles.git/commitdiff
bin/git-update.sh: Add --local option.
authorSimon Ruderich <simon@ruderich.org>
Tue, 30 Nov 2010 09:09:48 +0000 (10:09 +0100)
committerSimon Ruderich <simon@ruderich.org>
Tue, 30 Nov 2010 09:09:48 +0000 (10:09 +0100)
bin/git-update.sh

index 83080b965dfb42fb2a689bbc375537fb3ade1101..3fea2d6a7bf0c0fbefadf435d33da300957d4797 100755 (executable)
@@ -3,22 +3,32 @@
 # Push current commits to all remotes and fetch from all remotes. Then display
 # unmerged commits and changes in the repositories.
 #
+# If --local is given as option, no fetching/pushing is performed.
+#
 # If an argument is given cd to this directory before running the commands.
 #
 # Very useful to sync multiple remotes.
 
 
+LOCAL=
+if [ x$1 = x--local ];then
+    LOCAL=1
+    shift
+fi
+
 if [ x$1 != x ]; then
     echo $1
     cd "$1"
 fi
 
-# Get all remote changes.
-git remote update 2>&1 | grep -v Fetching
-# Push all local changes to remote(s).
-for remote in `git remote`; do
-    git push $remote 2>&1 | grep -v 'Everything up-to-date'
-done
+if [ x$LOCAL = x ]; then
+    # Get all remote changes.
+    git remote update 2>&1 | grep -v Fetching
+    # Push all local changes to remote(s).
+    for remote in `git remote`; do
+        git push $remote 2>&1 | grep -v 'Everything up-to-date'
+    done
+fi
 # Show unmerged changes.
 git branch -rv --color --no-merged
 # Show uncommitted changes.