From: Chris Koeritz Date: Thu, 24 May 2018 00:33:19 +0000 (-0400) Subject: corrected omitted checkouts in checkin X-Git-Tag: 2.140.113^2~10 X-Git-Url: https://feistymeow.org/gitweb/?a=commitdiff_plain;h=941fd0631d012eab27528ee34a35335b33ec9027;p=feisty_meow.git corrected omitted checkouts in checkin the checkin process was skipping the checkout for .no-checkin directories, when it should have still been checking out the code. --- diff --git a/scripts/archival/pack_feisty_meow.sh b/scripts/archival/pack_feisty_meow.sh index 4e646600..cb3d4a0f 100644 --- a/scripts/archival/pack_feisty_meow.sh +++ b/scripts/archival/pack_feisty_meow.sh @@ -16,16 +16,16 @@ TEMPO_FILE="$(mktemp "$TMP/zz_feistypack.XXXXXX")" log_feisty_meow_event "packing feisty meow in temporary file $TEMPO_FILE" -# shortcut for the lengthy exclude parameter. -# note that this only works on file patterns apparently, like *.hosed, -# instead of working with general patterns (like */code_guide/*). -export XC='--exclude=' - parent_dir="$(dirname "$FEISTY_MEOW_APEX")" base_dir="$(basename "$FEISTY_MEOW_APEX")" pushd $parent_dir +# shortcut for the lengthy exclude parameter. +# note that this only works on file patterns apparently, like *.hosed, +# instead of working with general patterns (like */code_guide/*). +export XC='--exclude=' + # archive feisty meow current state, but exclude the file names we never want # to see in the archive. the exclude vcs flag takes care of excluding # revision control system private dirs. first chunk of excludes is for the diff --git a/scripts/rev_control/version_control.sh b/scripts/rev_control/version_control.sh index b48ff253..2331b3a4 100644 --- a/scripts/rev_control/version_control.sh +++ b/scripts/rev_control/version_control.sh @@ -77,26 +77,36 @@ function do_revctrl_checkin() if [ $nicedir == "." ]; then nicedir=$(\pwd) fi - local blatt="echo -ne \nchecking in '$nicedir'... " + local blatt_report="echo -ne \nchecking in '$nicedir'... " + local tell_no_checkin="echo -ne \nskipping check-in due to presence of .no-checkin sentinel file: $nicedir" pushd "$directory" &>/dev/null - if [ -f ".no-checkin" ]; then - echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory" - elif [ -d "CVS" ]; then +#hmmm: overly elaborate sections below here, but we do want precise handling for git case. + if [ -d "CVS" ]; then if test_writeable "CVS"; then do_revctrl_simple_update "$directory" exit_on_error "updating repository; this issue should be fixed before check-in." - $blatt - cvs ci . - exit_on_error "cvs checkin" + if [ -f ".no-checkin" ]; then +# echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory" + tell_no_checkin + else + $blatt_report + cvs ci . + exit_on_error "cvs checkin" + fi fi elif [ -d ".svn" ]; then if test_writeable ".svn"; then do_revctrl_simple_update "$directory" exit_on_error "updating repository; this issue should be fixed before check-in." - $blatt - svn ci . - exit_on_error "svn checkin" + if [ -f ".no-checkin" ]; then +# echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory" + tell_no_checkin + else + $blatt_report + svn ci . + exit_on_error "svn checkin" + fi fi elif [ -d ".git" ]; then if test_writeable ".git"; then @@ -104,39 +114,43 @@ function do_revctrl_checkin() # take steps to make sure the branch integrity is good and we're up to date against remote repos. do_revctrl_careful_update "$(\pwd)" - $blatt + if [ -f ".no-checkin" ]; then +# echo -ne "\nskipping check-in due to presence of .no-checkin sentinel file: $directory" + tell_no_checkin + else + $blatt_report - # put all changed and new files in the commit. not to everyone's liking. - git add --all . | $TO_SPLITTER - promote_pipe_return 0 - exit_on_error "git add all new files" + # put all changed and new files in the commit. not to everyone's liking. + git add --all . | $TO_SPLITTER + promote_pipe_return 0 + exit_on_error "git add all new files" - # see if there are any changes in the local repository. - if ! git diff-index --quiet HEAD --; then - # tell git about all the files and get a check-in comment. + # see if there are any changes in the local repository. + if ! git diff-index --quiet HEAD --; then + # tell git about all the files and get a check-in comment. #hmmm: begins to look like, you guessed it, a reusable bit that all commit actions could enjoy. - git commit . - retval=$? - continue_on_error "git commit" - if [ $retval -ne 0 ]; then - echo -e -n "Commit failed or was aborted:\nShould we continue with other check-ins? [y/N] " - local line - read line - if [[ "${line:0:1}" != "y" ]]; then - echo "Stopping check-in process due to missing commit and user request." - exit 1 + git commit . + retval=$? + continue_on_error "git commit" + if [ $retval -ne 0 ]; then + echo -e -n "Commit failed or was aborted:\nShould we continue with other check-ins? [y/N] " + local line + read line + if [[ "${line:0:1}" != "y" ]]; then + echo "Stopping check-in process due to missing commit and user request." + exit 1 + fi fi fi - fi - # we continue on to the push, even if there were no obvious changes this run, because - # there could already be committed changes that haven't been pushed yet. - - # upload any changes to the upstream repo so others can see them. - git push --tags origin "$(my_branch_name)" 2>&1 | grep -v "X11 forwarding request failed" | $TO_SPLITTER - promote_pipe_return 0 - exit_on_error "git push" + # we continue on to the push, even if there were no obvious changes this run, because + # there could already be committed changes that haven't been pushed yet. + # upload any changes to the upstream repo so others can see them. + git push --tags origin "$(my_branch_name)" 2>&1 | grep -v "X11 forwarding request failed" | $TO_SPLITTER + promote_pipe_return 0 + exit_on_error "git push" + fi fi else # nothing there. it's not an error though. @@ -318,8 +332,8 @@ function do_revctrl_careful_update() if [ $nicedir == "." ]; then nicedir=$(\pwd) fi - local blatt="echo -e \ncarefully retrieving '$nicedir'..." - $blatt + local blatt_report="echo -e \ncarefully retrieving '$nicedir'..." + $blatt_report local this_branch="$(my_branch_name)" @@ -380,26 +394,26 @@ function do_revctrl_simple_update() if [ $nicedir == "." ]; then nicedir=$(\pwd) fi - local blatt="echo -e \nretrieving '$nicedir'..." + local blatt_report="echo -e \nretrieving '$nicedir'..." pushd "$directory" &>/dev/null if [ -d "CVS" ]; then if test_writeable "CVS"; then - $blatt + $blatt_report cvs update . | $TO_SPLITTER promote_pipe_return 0 exit_on_error "cvs update" fi elif [ -d ".svn" ]; then if test_writeable ".svn"; then - $blatt + $blatt_report svn update . | $TO_SPLITTER promote_pipe_return 0 exit_on_error "svn update" fi elif [ -d ".git" ]; then if test_writeable ".git"; then - $blatt + $blatt_report git pull --tags $PULL_ADDITION 2>&1 | grep -v "X11 forwarding request failed" | $TO_SPLITTER promote_pipe_return 0 exit_on_error "git pull of origin"