fixed issue with new parameter skipping in splitter.
[feisty_meow.git] / scripts / rev_control / version_control.sh
index b42df56850feecbc263313dd3faae1fd61131ff4..a38d22a8f413c231eb15ccf856a4f3fb93d2f419 100644 (file)
@@ -3,8 +3,12 @@
 # these are helper functions for doing localized revision control.
 # this script should be sourced into other scripts that use it.
 
+# the maximum depth that the recursive functions will try to go below the starting directory.
+export MAX_DEPTH=5
+
+#hmmm: re-address this code, since it doesn't make a lot of sense to me right now...
 # one unpleasantry to take care of first; cygwin barfs aggressively if the TMP directory
-# is a DOS path, but we need it to be a DOS path for our XSEDE testing, so that blows.
+# is a DOS path, but we need it to be a DOS path for our GFFS testing, so that blows.
 # to get past this, TMP gets changed below to a hopefully generic and safe place.
 
 if [[ "$TMP" =~ .:.* ]]; then
@@ -102,7 +106,6 @@ function compute_modifier()
 function do_checkin()
 {
   local directory="$1"; shift
-echo "do_checkin sees directory '$directory'"
   do_update "$directory"
   if [ $? -ne 0 ]; then
     echo "Repository update failed; this should be fixed before check-in."
@@ -256,11 +259,11 @@ function generate_rev_ctrl_filelist()
 {
   local dir="$1"; shift
   pushd "$dir" &>/dev/null
-  local dirhere="$(\pwd)"
+  local dirhere="$( \cd "$(\dirname "$dir")" && /bin/pwd )"
   local tempfile=$(mktemp /tmp/zz_rev_checkin.XXXXXX)
   echo >$tempfile
-  find $dirhere -maxdepth 5 -type d -iname ".svn" -exec echo {}/.. ';' >>$tempfile
-  find $dirhere -maxdepth 5 -type d -iname ".git" -exec echo {}/.. ';' >>$tempfile
+  find $dirhere -follow -maxdepth $MAX_DEPTH -type d -iname ".svn" -exec echo {}/.. ';' >>$tempfile 2>/dev/null
+  find $dirhere -follow -maxdepth $MAX_DEPTH -type d -iname ".git" -exec echo {}/.. ';' >>$tempfile 2>/dev/null
   # CVS is not well behaved like git and (now) svn, and we seldom use it anymore.
   popd &>/dev/null
   local sortfile=$(mktemp /tmp/zz_rev_checkin_sort.XXXXXX)
@@ -276,10 +279,7 @@ function perform_revctrl_action_on_file()
   local tempfile="$1"; shift
   local action="$1"; shift
 
-#  dirs=($(cat $tempfile))
-
   while read -u 3 dirname; do
-#  for dirname in "${dirs[@]}"; do
     if [ -z "$dirname" ]; then continue; fi
     pushd "$dirname" &>/dev/null
     echo "[$(pwd)]"