Buildinfo: suppress error prints when building local branches

Before this console output contained messages about branch is not
configured to use any upstream branch which is not useful information
at all.
This commit is contained in:
Sergey Sharybin 2013-11-29 18:19:42 +06:00
parent 285e09bceb
commit 5f2400414a
2 changed files with 14 additions and 5 deletions

View File

@ -17,7 +17,8 @@ if(EXISTS ${SOURCE_DIR}/.git)
execute_process(COMMAND git rev-parse --short @{u}
WORKING_DIRECTORY ${SOURCE_DIR}
OUTPUT_VARIABLE MY_WC_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE)
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_QUIET)
if (MY_WC_HASH STREQUAL "")
# Local branch, not set to upstream.
@ -25,7 +26,7 @@ if(EXISTS ${SOURCE_DIR}/.git)
execute_process(COMMAND git rev-parse --short HEAD
WORKING_DIRECTORY ${SOURCE_DIR}
OUTPUT_VARIABLE MY_WC_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE)
OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()
execute_process(COMMAND git rev-parse --abbrev-ref HEAD
@ -55,7 +56,8 @@ if(EXISTS ${SOURCE_DIR}/.git)
execute_process(COMMAND git log @{u}..
WORKING_DIRECTORY ${SOURCE_DIR}
OUTPUT_VARIABLE _git_unpushed_log
OUTPUT_STRIP_TRAILING_WHITESPACE)
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_QUIET)
if(NOT _git_unpushed_log STREQUAL "")
set(MY_WC_BRANCH "${MY_WC_BRANCH} (modified)")
endif()

View File

@ -419,11 +419,18 @@ def buildinfo(lenv, build_type):
build_commit_timestamp = '0'
build_branch = 'unknown'
else:
build_hash = os.popen('git rev-parse --short @{u}').read().strip()
import subprocess
no_upstream = False
process = subprocess.Popen(['git', 'rev-parse', '--short', '@{u}'],
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
build_hash, stderr = process.communicate()
build_branch = os.popen('git rev-parse --abbrev-ref HEAD').read().strip()
if build_hash == '':
build_hash = os.popen('git rev-parse --short HEAD').read().strip()
no_upstream = True
# ## Check for local modifications
has_local_changes = False
@ -434,7 +441,7 @@ def buildinfo(lenv, build_type):
if changed_files:
has_local_changes = True
else:
elif no_upstream == False:
unpushed_log = os.popen('git log @{u}..').read().strip()
has_local_changes = unpushed_log != ''