Эх сурвалжийг харах

Handle release candidates in git version parsing

Right now repo chokes on git versions like "1.9.rc1".  This change
treats 'rc*' as a '0'.

Change-Id: I612b7b431675ba7415bf70640a673e48dbb00a90
Conley Owens 12 жил өмнө
parent
commit
1c5da49e6c
1 өөрчлөгдсөн 8 нэмэгдсэн , 4 устгасан
  1. 8 4
      git_command.py

+ 8 - 4
git_command.py

@@ -88,10 +88,14 @@ class _GitCall(object):
     if _git_version is None:
       ver_str = git.version().decode('utf-8')
       if ver_str.startswith('git version '):
-        _git_version = tuple(
-          map(int,
-            ver_str[len('git version '):].strip().split('-')[0].split('.')[0:3]
-          ))
+        num_ver_str = ver_str[len('git version '):].strip()
+        to_tuple = []
+        for num_str in num_ver_str.split('.')[:3]:
+          if num_str.isdigit():
+            to_tuple.append(int(num_str))
+          else:
+            to_tuple.append(0)
+        _git_version = tuple(to_tuple)
       else:
         print('fatal: "%s" unsupported' % ver_str, file=sys.stderr)
         sys.exit(1)