From 50fbebe0a443d10b3b5525c9a7e152acc32b4527 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 19 Nov 2013 22:01:43 +0600 Subject: Buildinfo fixes - Use -M suffix if working tree does have uncommitted modifications. - Local commits are considered local changes as well --- build_files/scons/tools/Blender.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'build_files/scons/tools') diff --git a/build_files/scons/tools/Blender.py b/build_files/scons/tools/Blender.py index e750ce09aff..894c8dbca25 100644 --- a/build_files/scons/tools/Blender.py +++ b/build_files/scons/tools/Blender.py @@ -421,6 +421,22 @@ def buildinfo(lenv, build_type): else: build_hash = os.popen('git rev-parse --short HEAD').read().strip() build_branch = os.popen('git rev-parse --abbrev-ref HEAD').read().strip() + + # ## Check for local modifications + has_local_changes = False + + # Update GIT index before getting dirty files + os.system('git update-index -q --refresh') + changed_files = os.popen('git diff-index --name-only HEAD --').read().strip() + + if changed_files: + has_local_changes = True + else: + unpushed_log = os.popen('git log @{u}..').read().strip() + has_local_changes = unpushed_log != '' + + if has_local_changes: + build_branch += ' (modified)' else: build_hash = 'unknown' build_commit_timestamp = '0' -- cgit v1.2.3