naming fixes, terminal title fixes
[feisty_meow.git] / scripts / rev_control / checkin.sh
index 4a747e76e399e4f2fb24ddd32d88f414038c1f12..5c254b8681deee2460a89c0138b11cfae85c3fb3 100644 (file)
@@ -1,47 +1,31 @@
 #!/bin/bash
 
-# checks in all our commonly used folders.
-# note: fred specific.
-
-source "$FEISTY_MEOW_SCRIPTS/rev_control/rev_control.sh"
-
-# selects the method for check-in based on where we are.
-function do_checkin()
-{
-  local directory="$1"; shift
-  if [ -d "CVS" ]; then
-    # this appears to be cvs.
-    pushd "$directory/.." &>/dev/null
-    cvs ci "$directory"
-    popd &>/dev/null
-  elif [ -d ".svn" ]; then
-    svn ci .
-  elif [ -d ".git" ]; then
-    git commit .
-    git push
-  else
-    echo unknown repository for $directory...
-  fi
-}
-
-function checkin_list {
-  local list=$*
-  for i in $list; do
-    for j in $i/feisty_meow $i/hoople1 $i/hoople2 $i/quartz $i/web $i/yeti $i/xsede/xsede_tests $i/xsede/code/cak0l/trunk ; do
-      if [ ! -d "$j" ]; then continue; fi
-
-      pushd $j &>/dev/null
-      echo "checking in '$j'..."
-      do_checkin $j
-      popd &>/dev/null
-    done
-  done
-}
-
-if [ "$OS" != "Windows_NT" ]; then
-  # first get individual folders.
-  checkin_list $HOME
-else
-  checkin_list c: c:/home d: d:/home e: e:/home f: f:/home g: g:/home h: h:/home i: i:/home 
+# checkin: checks in all the folders present in the REPOSITORY_LIST variable.
+
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
+source "$FEISTY_MEOW_SCRIPTS/rev_control/version_control.sh"
+
+save_terminal_title
+
+##############
+
+echo "committing repositories at: $(date)"
+
+FULL_LIST=" $(dirname $FEISTY_MEOW_APEX) $HOME "
+if [ "$OS" == "Windows_NT" ]; then
+  FULL_LIST+=" c:/ d:/ e:/ "
 fi
 
+checkin_list $FULL_LIST
+exit_on_error "revision control check-in of list: $FULL_LIST"
+
+##############
+
+# regenerate the scripts after the check-in, since an update during check-in
+# could mean we have a modified version of feisty meow is present.
+regenerate
+
+##############
+
+restore_terminal_title
+