changes needed since cygwin is somehow getting a different interpretation of the...
[feisty_meow.git] / scripts / rev_control / version_control.sh
index e004964ae095b3030dd920a61945328e26cf3fd0..f76f3301a093d2b3068fe1176cabcf6ca82ce366 100644 (file)
@@ -3,8 +3,9 @@
 # these are helper functions for doing localized revision control.
 # this script should be sourced into other scripts that use it.
 
+#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
@@ -191,7 +192,7 @@ function squash_first_few_crs()
   i=0
   while read line; do
     i=$((i+1))
-    if [ $i -le 3 ]; then
+    if [ $i -le 5 ]; then
       echo -n "$line  "
     else
       echo $line
@@ -255,11 +256,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 5 -type d -iname ".svn" -exec echo {}/.. ';' >>$tempfile 2>/dev/null
+  find $dirhere -follow -maxdepth 5 -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)
@@ -270,15 +271,12 @@ function generate_rev_ctrl_filelist()
 
 # iterates across a list of directories contained in a file (first parameter).
 # on each directory name, it performs the action (second parameter) provided.
-function perform_action_on_file()
+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)]"