diff --git a/git/db/cmd/base.py b/git/db/cmd/base.py
index b940fd035..dd9aa800e 100644
--- a/git/db/cmd/base.py
+++ b/git/db/cmd/base.py
@@ -662,8 +662,8 @@ def is_dirty(self, index=True, working_tree=True, untracked_files=False):
         default_args = ('--abbrev=40', '--full-index', '--raw')
         if index:
             # diff index against HEAD
-            if isfile(self.index.path) and self.head.is_valid() and \
-                    len(self.git.diff('HEAD', '--cached', *default_args)):
+            if isfile(self.index.path) and \
+                    len(self.git.diff('--cached', *default_args)):
                 return True
         # END index handling
         if working_tree: