diff --git a/update_version b/update_version
index a9999918d0f7e3cd52eb1c2cdbc70c1d85ccb226..6086136d79b6fb6af140fa7159fd19eb01dd43c9 100755
--- a/update_version
+++ b/update_version
@@ -34,7 +34,8 @@ fi
 # -dirty from files that have been touched but are not actually altered in the
 # working dir.
 GIT_VERSION=$(cd "$SRCDIR" && git status > /dev/null 2>&1 \
-                           && git describe --tags --match 'v*' --dirty 2> /dev/null)
+                           && git describe --tags --match 'v*' \
+                                           --always --dirty 2> /dev/null)
 GIT_VERSION=${GIT_VERSION#v}
 
 if [ -n "$GIT_VERSION" ]; then
diff --git a/win32/genversion.bat b/win32/genversion.bat
index 82885be71a60a1845e0935932396ac4b33f43baa..b493cd4709fb2736f0311e05e458b757e3a1bf68 100644
--- a/win32/genversion.bat
+++ b/win32/genversion.bat
@@ -2,7 +2,7 @@
 
 setlocal enableextensions enabledelayedexpansion
 
-for /f %%v in ('git --git-dir="%~dp0..\.git" describe --tags --match "v*"') do set version=%%v
+for /f %%v in ('git --git-dir="%~dp0..\.git" describe --tags --match "v*" --always --dirty') do set version=%%v
 
 if not "%version%"=="" goto :gotversion
 
@@ -43,4 +43,4 @@ copy /y "%1_temp" "%1"
 
 :exit
 
-del "%1_temp"
\ No newline at end of file
+del "%1_temp"