END
}
+# Copyright 2004-2006 Ian Jackson <ian@chiark.greenend.org.uk>
+#
+# This script and its documentation (if any) are free software; you
+# can redistribute it and/or modify them under the terms of the GNU
+# General Public License as published by the Free Software Foundation;
+# either version 3, or (at your option) any later version.
+#
+# chiark-named-conf and its manpage are distributed in the hope that
+# it will be useful, but WITHOUT ANY WARRANTY; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+# PURPOSE. See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, consult the Free Software Foundation's
+# website at www.fsf.org, or the GNU Project website at www.gnu.org.
+
+
# We do things in the following order:
# src dst
# 0. Check things @/..moving-to none/..moved-to
ls -d -- $srcrepo/CVSROOT >/dev/null
'"
- dstrepotrans="$(printf "%s" "$dstrepo" | tr / :)"
+ dstrepotrans="$(printf '%s\n' "$dstrepo" | tr / :)"
movingto="moving-to-$dsthost:$dstrepotrans"
resume="$("$CVS_RSH" "$srchost" bash -ec "'
if test -d $srcrepo/$module..$movingto; then
- echo \" resuming previous attempt at a move\"
+ echo >&2 \" resuming previous attempt at a move\"
resume=true
if test -d $srcrepo/$module; then
echo >&2 \"but $srcrepo/$module exists too\"
set +e
previously=\"$(ls -d -- $srcrepo/$module..moved-to-* 2>/dev/null)\"
set -e
- if [ \"x$previously\" != x ]; then
- echo \" btw, module was once before moved away from here\"
- mv -- \"$previously\" \
- \"${previously/..moved-to-/..previously-\$(date +%s)-moved-to-}\"
+ if [ \"x\$previously\" != x ]; then
+ echo >&2 \" btw, module was once before moved away from here\"
+ mv -- \"\$previously\" \
+ \"\${previously/..moved-to-/..previously-\$(date +%s)-moved-to-}\"
fi
echo \$resume
'")"
fi
for f in $module..*; do
case \"\$f\" in
- *..moved-to-*) echo \" btw, module was previously at destn repo\" ;;
+ *..moved-to-*)
+ echo \" btw, module was previously at destn repo\"
+ mv -- \"\$f\" \
+ \"\${f/..moved-to-/..previously-\$(date +%s)-moved-to-}\"
+ ;;
*..previously-*) ;;
- *..tmp-*) echo \" nb: possibly-stale temp/partial copy \$f\" ;;
- *..\*) ;;
- *) echo >&2 \"error: found unexpected subdir \$f\"; exit 8;;
+ *..tmp-*)
+ echo \" nb: possibly-stale temp/partial copy \$f\"
+ ;;
+ *..\*)
+ ;;
+ *)
+ echo >&2 \"error: found unexpected subdir \$f\"
+ exit 8
+ ;;
esac
done
'"
remotehost="${goose%%:*}"
path="${goose#*:}"
check_hostname "$remotehost"
- check_remote_path "$remotepath/$module"
+ check_remote_path "$path/$module"
isremote=true
compute_fqdn_data "$remotehost"
if [ "x$fqdn_data" = "x$our_fqdn_data" -a \
exit 4
;;
*..moved-to-*)
- goose="$(printf "%s" \
+ goose="$(printf '%s\n' \
"${new_goose_info#*..moved-to-}" | \
tr : / | sed -e 's,/,:,')"
;;