Date: Wed, 25 Jun 2014 07:37:36 +0000 (UTC) From: Alex Kozlov <ak@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-svnadmin@freebsd.org Subject: svn commit: r359194 - in svnadmin/hooks: . scripts Message-ID: <201406250737.s5P7bacL053564@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ak Date: Wed Jun 25 07:37:35 2014 New Revision: 359194 URL: http://svnweb.freebsd.org/changeset/ports/359194 QAT: https://qat.redports.org/buildarchive/r359194/ Log: - Add hook to detect empty files and directories Approved by: portmgr (mat, miwi) Added: svnadmin/hooks/scripts/detect-empty.sh (contents, props changed) Modified: svnadmin/hooks/pre-commit Modified: svnadmin/hooks/pre-commit ============================================================================== --- svnadmin/hooks/pre-commit Wed Jun 25 07:27:35 2014 (r359193) +++ svnadmin/hooks/pre-commit Wed Jun 25 07:37:35 2014 (r359194) @@ -104,6 +104,9 @@ detect-merge-conflicts.sh "$REPO" "$TXN" # check for newline at end of file detect-nonewline-at-eof.sh "$REPO" "$TXN" || exit 1 +# check for empty files and directories +detect-empty.sh "$REPO" "$TXN" || exit 1 + # check for upper/lowercase filename conflicts on clients case-insensitive.py "$REPO" "$TXN" || exit 1 Added: svnadmin/hooks/scripts/detect-empty.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ svnadmin/hooks/scripts/detect-empty.sh Wed Jun 25 07:37:35 2014 (r359194) @@ -0,0 +1,34 @@ +#!/bin/sh +# $FreeBSD$ + +REPO=$1 +TXN=$2 + +OIFS=${IFS} +IFS=$'\n' +svnlook log -t "${TXN}" "${REPO}" | grep -q portmgr && exit 0 +for line in $(svnlook changed -t $TXN $REPO) ; do + IFS=${OIFS} + set -- $line + type=$1 + fpath=$2 + case $type in + [^AU]*) continue;; + esac + case $fpath in + */) # directory + if [ $(svnlook tree -t ${TXN} ${REPO} $fpath | wc -l) -eq 1 ]; then + echo "Some directories in your commit are empty: $fpath" 1>&2 + echo "Please fix this and try committing again." 1>&2 + exit 1 + fi + ;; + *) + if [ $(svnlook cat -t ${TXN} ${REPO} $fpath | wc -c) -eq 0 ]; then + echo "Some files in your commit are empty: $fpath" 1>&2 + echo "Please fix this and try committing again." 1>&2 + exit 1 + fi + ;; + esac +done
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201406250737.s5P7bacL053564>