From 7c99cfc2906adb6e1d2d0ad333945ef243795431 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= Date: Thu, 18 Sep 2008 23:33:25 +0300 Subject: [PATCH] Fix git-svn rebase --- update.sh | 47 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 9 deletions(-) diff --git a/update.sh b/update.sh index 5930f22..86e7c0a 100755 --- a/update.sh +++ b/update.sh @@ -37,8 +37,6 @@ if [ ! $MSGINIT ]; then exit 1 fi -SVN="$SVN co" - if [ $GIT ] && [ ! $GITSVN ]; then echo -e "\E[31mgit-svn is unavailable. svn will be used."; tput sgr0 GIT=0 @@ -52,8 +50,25 @@ echo -e "Language: \E[31m$LCODE"; tput sgr0 echo "" if [ ! -z $TRUNK ]; then - echo -e "Updating repository: \E[34mtrunk" - $SVN "$REPO/$TRUNK/po" $TRUNK + if [ -e $TRUNK/.git] || [ -e $TRUNK/.svn ]; then + echo -e "Updating repository: \E[34mtrunk" + if [ $GIT ] && [ $GITSVN ]; then + SVN="$GITSVN rebase" + else + SVN="$SVN update" + fi + cd $TRUNK + $SVN "$REPO/$TRUNK/po" + cd .. + else + echo -e "Downloading repository: \E[34mtrunk" + if [ $GIT ] && [ $GITSVN ]; then + SVN="$GITSVN clone" + else + SVN="$SVN checkout" + fi + $SVN "$REPO/$TRUNK/po" $TRUNK + fi tput sgr0 if [ ! -e "$PREFIX-$TRUNK" ]; then mkdir "$PREFIX-$TRUNK" @@ -61,12 +76,26 @@ if [ ! -z $TRUNK ]; then fi for BRANCH in $BRANCHES; do - echo -e "Updating repository: \E[34m$BRANCH" - $SVN "$REPO/branches/$BRANCH/po" $BRANCH + if [ -e $BRANCH/.git] || [ -e $BRANCH/.svn ]; then + echo -e "Updating repository: \E[34m$BRANCH" + if [ $GIT ] && [ $GITSVN ]; then + SVN="$GITSVN rebase" + else + SVN="$SVN update" + fi + cd $BRANCH + $SVN "$REPO/$BRANCH/po" + cd .. + else + echo -e "Downloading repository: \E[34m$BRANCH" + if [ $GIT ] && [ $GITSVN ]; then + SVN="$GITSVN clone" + else + SVN="$SVN checkout" + fi + $SVN "$REPO/$BRANCH/po" $BRANCH + fi tput sgr0 -done - -for BRANCH in $BRANCHES; do if [ ! -e "$PREFIX-$BRANCH" ]; then mkdir "$PREFIX-$BRANCH" fi