[U-Boot] [PATCH v6 15/20] patman: Only use git's --no-decorate when available

Simon Glass
2014-08-09T21:33:11Z

Older versions of git (e.g. Ubuntu 10.04) do not support this flag. By
default they do not decorate. So only enable this flag when supported.

Suggested-by: Tom Rini <trini@ti.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v6: None
Changes in v5:
- Update test for output options

Changes in v4: None
Changes in v3:
- Add new patch to refactor output options

Changes in v2: None

tools/patman/gitutil.py | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py
index a8b0a1a..735c8dd 100644
--- a/tools/patman/gitutil.py
+++ b/tools/patman/gitutil.py
@@ -14,6 +14,9 @@ import terminal
import checkpatch
import settings

+# True to use --no-decorate - we check this in Setup()
+use_no_decorate = True
+
def LogCmd(commit_range, git_dir=None, oneline=False, reverse=False,
count=None):
"""Create a command to perform a 'git log'
@@ -33,7 +36,8 @@ def LogCmd(commit_range, git_dir=None, oneline=False, reverse=False,
cmd += ['log', '--no-color']
if oneline:
cmd.append('--oneline')
- cmd.append('--no-decorate')
+ if use_no_decorate:
+ cmd.append('--no-decorate')
if count is not None:
cmd.append('-n%d' % count)
if commit_range:
@@ -566,6 +570,9 @@ def Setup():
alias_fname = GetAliasFile()
if alias_fname:
settings.ReadGitAliases(alias_fname)
+ cmd = LogCmd(None, count=0)
+ use_no_decorate = (command.RunPipe([cmd], raise_on_error=False)
+ .return_code == 0)

def GetHead():
"""Get the hash of the current HEAD
--
2.0.0.526.g5318336