diff --git a/share/Makefile.headers b/share/Makefile.headers
index 65b55c39da7dfcfd146796f37d9de95908e01d1d..dcb6526209078c345e2366742a112f68b87f390b 100644
--- a/share/Makefile.headers
+++ b/share/Makefile.headers
@@ -207,7 +207,7 @@ else
 ifneq ($(HDRCK.HAS_GIT),)
 
 define HDRCK.file-list-from-git-diff
-$(GIT) diff --name-status $(1) | $(GREP) -v "^D" | $(SED) "s/^.[ \t]*//" | $(TR) '\n' '\000' | $(HDRCK.FILE_ATTR)
+$(GIT) diff --name-status $(1) | $(GREP) -v "^D" | $(SED) -e "s/^[CR][0-9]\+[ \t]\+[^ \t]\+[ \t]\+//" -e "s/^[AM][ \t]*//" | $(TR) '\n' '\000' | $(HDRCK.FILE_ATTR)
 endef
 
 HDRCK.main-targets=check-headers headers