summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-11-18 13:14:20 +0300
committerAndrei Karas <akaras@inbox.ru>2014-11-18 13:14:20 +0300
commit47a583533d796f304e0e58c9d6d0db36e24806a4 (patch)
treecbf619e7846a5d5fef7f500e21090855ab15a3fe
parent97317bd2a3452b1602b982e918357248953dd64d (diff)
downloadall-47a583533d796f304e0e58c9d6d0db36e24806a4.tar.gz
all-47a583533d796f304e0e58c9d6d0db36e24806a4.tar.bz2
all-47a583533d796f304e0e58c9d6d0db36e24806a4.tar.xz
all-47a583533d796f304e0e58c9d6d0db36e24806a4.zip
Use git-reset after pulling from server-code branch.
This will prevent merge conflicts with rebased code.
-rwxr-xr-xpull.sh23
1 files changed, 22 insertions, 1 deletions
diff --git a/pull.sh b/pull.sh
index 8e3b4d2..8c2d278 100755
--- a/pull.sh
+++ b/pull.sh
@@ -18,9 +18,30 @@ function status {
cd $DIR
}
+function status2 {
+ if [ ! -d "$1" ]; then
+ return
+ fi
+ DIR=`pwd`
+ cd "$1"
+ STR=`git diff --name-only`
+ STR2=`git status|grep "Your branch is ahead"`
+ STR3=`git status -s -uno`
+ echo "$2:"
+ if [[ -n "${STR}${STR2}${STR3}" ]]; then
+ echo -e "\e[1;31mCant pull because changes not pushed\e[0m"
+ else
+ git pull --no-commit
+ git fetch origin
+ export BRANCH=`git rev-parse --abbrev-ref HEAD`
+ git reset --hard origin/${BRANCH}
+ fi
+ cd $DIR
+}
+
status . evol-all
status client-data client-data
-status server-code server-code
+status2 server-code server-code
status server-data server-data
status server-local server-local
status tools tools