X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Frev_control%2Fversion_control.sh;h=86cfaeffb710e9db84524279eb88903246a5d4f7;hb=3f3cf94b1558bd793e5b827a4ae5596ff30a53cf;hp=4da2c6a7d64271dd131ac2120209dfd3083532e3;hpb=402aa5fff8715eac34d9e7d45402a46013a1388b;p=feisty_meow.git diff --git a/scripts/rev_control/version_control.sh b/scripts/rev_control/version_control.sh index 4da2c6a7..86cfaeff 100644 --- a/scripts/rev_control/version_control.sh +++ b/scripts/rev_control/version_control.sh @@ -121,7 +121,7 @@ function do_checkin() git push 2>&1 | grep -v "X11 forwarding request failed" retval+=$? else - echo unknown repository for $directory... + echo no repository in $directory retval=1 fi popd &>/dev/null @@ -147,6 +147,21 @@ function do_diff return $retval } +function do_report_new +{ + local directory="$1"; shift + pushd "$directory" &>/dev/null + retval=0 # normally successful. + + # only update if we see a repository living there. + if [ -d ".svn" ]; then + # this action so far only makes sense and is needed for svn. + bash $FEISTY_MEOW_SCRIPTS/rev_control/svnapply.sh \? echo + fi + + popd &>/dev/null + return $retval +} # checks in all the folders in a specified list. function checkin_list() @@ -196,7 +211,7 @@ function do_update() elif [ -d ".git" ]; then git pull 2>&1 | grep -v "X11 forwarding request failed" | squash_first_few_crs else - echo unknown repository for $directory... + echo no repository in $directory fi popd &>/dev/null } @@ -232,12 +247,14 @@ function generate_rev_ctrl_filelist() local dirhere="$(\pwd)" local tempfile=$(mktemp /tmp/zz_rev_checkin.XXXXXX) echo >$tempfile - find $dirhere -maxdepth 3 -type d -iname ".svn" -exec echo {}/.. ';' >>$tempfile - find $dirhere -maxdepth 3 -type d -iname ".git" -exec echo {}/.. ';' >>$tempfile -#CVS is not well behaved, and we seldom use it anymore. -# find $dirhere -maxdepth 3 -type d -iname "CVS" -exec echo {}/.. ';' >>$tempfile + find $dirhere -maxdepth 5 -type d -iname ".svn" -exec echo {}/.. ';' >>$tempfile + find $dirhere -maxdepth 5 -type d -iname ".git" -exec echo {}/.. ';' >>$tempfile + # CVS is not well behaved like git and (now) svn, and we seldom use it anymore. popd &>/dev/null - echo "$tempfile" + local sortfile=$(mktemp /tmp/zz_rev_checkin_sort.XXXXXX) + sort <"$tempfile" >"$sortfile" + \rm "$tempfile" + echo "$sortfile" } # iterates across a list of directories contained in a file (first parameter).