3 # gets any updates for the repository folders present in the REPOSITORY_LIST variable.
5 source "$FEISTY_MEOW_SCRIPTS/rev_control/rev_control.sh"
7 # trickery to ensure we can always update this file, even when the operating system has some
8 # rude behavior with regard to file locking (ahem, windows...).
9 if [ "$(pwd)" != "$TMP" ]; then
10 if [ ! -z "$SHELL_DEBUG" ]; then
11 echo "Moving to the TMP directory to avoid file access conflicts..."
13 new_name="$TMP/zz_$(basename $0)"
14 cp -f "$0" "$new_name"
16 echo "failed to copy this script up to the TMP directory. exploit attempted?"
24 # selects the checkout method based on where we are (the host the script runs on).
31 elif [ -d ".svn" ]; then
33 elif [ -d ".git" ]; then
36 echo unknown repository for $directory...
40 # gets all the updates for a list of folders under revision control.
41 function checkout_list {
44 # turn repo list back into an array.
45 eval "repository_list=( ${REPOSITORY_LIST[*]} )"
46 for j in "${repository_list[@]}"; do
47 # add in the directory for our purposes here.
50 if [ ! -z "$SHELL_DEBUG" ]; then
51 echo "No directory called $j exists."
57 echo -n "retrieving '$j'... "
66 export TMPO_CHK=$TMP/zz_chk.log
70 # perform the checkouts as appropriate per OS.
71 if [ "$OS" != "Windows_NT" ]; then
72 checkout_list $HOME 2>&1 | tee -a "$TMPO_CHK"
74 checkout_list $HOME c:/ d:/ e:/ f:/ g:/ h:/ i:/ 2>&1 | tee -a "$TMPO_CHK"
81 # we now regenerate the scripts after getme, to ensure it's done automatically.
82 bash "$FEISTY_MEOW_SCRIPTS/core/bootstrap_shells.sh"
83 perl "$FEISTY_MEOW_SCRIPTS/core/generate_aliases.pl"