Precondition: trunk/ directory never has any subdirectories. This is true across our entire svn-packages repository, although I did not check svn-community. The following command was used: find -mindepth 3 -type d ! -wholename '*/.svn*' -wholename *trunk* This should really help a variety of things- reduce the number of commits, reduce the number of emails to arch-commits, make mass package moves faster, etc. The entire dbscripts test suite still passes after this change. Signed-off-by: Dan McGee <dan@archlinux.org> --- db-move | 13 ++++++++++--- 1 files changed, 10 insertions(+), 3 deletions(-) diff --git a/db-move b/db-move index ff1b0e2..e3467e8 100755 --- a/db-move +++ b/db-move @@ -78,11 +78,18 @@ for pkgbase in ${args[@]:2}; do pkgver=$(. "${svnrepo_from}/PKGBUILD"; echo $(get_full_version ${epoch:-0} ${pkgver} ${pkgrel})) if [ -d "${svnrepo_to}" ]; then - /usr/bin/svn rm --force -q "${svnrepo_to}" - /usr/bin/svn commit -q "${WORKDIR}/svn/${pkgbase}" -m "$(basename $0): ${pkgbase} removed by $(id -un) for move to [${repo_to}] (${pkgarch})" + for file in $(svn ls "${svnrepo_to}"); do + svn rm -q "$file" + done + else + mkdir "${svnrepo_to}" + svn add "${svnrepo_to}" fi - /usr/bin/svn mv -q -r HEAD "${svnrepo_from}" "${svnrepo_to}" + for file in $(svn ls "${svnrepo_from}"); do + svn mv -q -r HEAD "${svnrepo_from}/$file" "${svnrepo_to}/" + done + /usr/bin/svn rm --force -q "${svnrepo_from}" /usr/bin/svn commit -q "${WORKDIR}/svn/${pkgbase}" -m "$(basename $0): moved ${pkgbase} from [${repo_from}] to [${repo_to}] (${pkgarch})" for pkgname in ${pkgnames[@]}; do -- 1.7.6