summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog3
-rwxr-xr-xpre-commit.d/20warn-problem-files5
2 files changed, 7 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog
index be96f8b..402885e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -11,6 +11,9 @@ etckeeper (0.53) UNRELEASED; urgency=low
[ Joey Hess ]
* Add .pyc and .pyo files to ignore.
* Add lvm/backup and lvm/cache to ignore. Closes: #462355
+ * Avoid warning about special or hard linked files that are ignored
+ by hg. Thanks Sjoerd Mullender for patch.
+ Closes: https://bugzilla.redhat.com/show_bug.cgi?id=688991
-- Joey Hess <joeyh@debian.org> Sat, 19 Feb 2011 20:02:46 -0400
diff --git a/pre-commit.d/20warn-problem-files b/pre-commit.d/20warn-problem-files
index e1bbd84..d600ff6 100755
--- a/pre-commit.d/20warn-problem-files
+++ b/pre-commit.d/20warn-problem-files
@@ -5,9 +5,12 @@ exclude_internal () {
egrep -v '(^|/)(.git|.hg|.bzr|_darcs)/'
}
-if [ "$VCS" = hg ] || [ "$VCS" = bzr ] || [ "$VCS" = darcs ]; then
+if [ "$VCS" = bzr ] || [ "$VCS" = darcs ]; then
special=$(find . -not -type d -not -type f -not -type l | exclude_internal) || true
hardlinks=$(find . -type f -not -links 1 | exclude_internal ) || true
+elif [ "$VCS" = hg ]; then
+ special=$(find . -not -type d -not -type f -not -type l | exclude_internal) || true
+ hardlinks=$(find . -type f -not -links 1 -exec hg status {} \; | exclude_internal ) || true
elif [ "$VCS" = git ]; then
special=$(find . -not -type d -not -type f -not -type l -exec git ls-files --exclude-standard --cached --others {} \; | exclude_internal) || true
hardlinks=$(find . -type f -not -links 1 -exec git ls-files --exclude-standard --cached --others {} \; | exclude_internal) || true