rsb: git checkout 5 fails

Michael Davidsaver mdavidsaver at gmail.com
Tue Jul 3 02:37:53 UTC 2018


With a clean checkout of rtems-source-builder I attempted to build
"5/rtems-powerpc.bset", but was eventually greeted with:

> git: checkout: git://git.rtems.org/rtems.git => 5
> error: git command failed (/usr/bin/git): 1

With a little modification of source-builder/sb/git.py to print the _arguments_,
I find that the failing command is:

> /usr/bin/git checkout 5

which is not surprising since the checkout has no '5' branch.

> $ cd sources/git/rtems.git
> $ git branch -a
> * master
>   remotes/origin/4.10
>   remotes/origin/4.11
>   remotes/origin/4.8
>   remotes/origin/4.9
>   remotes/origin/HEAD -> origin/master
>   remotes/origin/master

Is this meant to be 'git checkout origin/5',
or do I need to create and manage this branch myself?



> ../source-builder/sb-set-builder --prefix /home/travis/.rtems --rtems-bsps=powerpc/mvme3100 --with-rtems --no-install --bset-tar-file --source-only-download 5/rtems-powerpc.bset


> $ git --version
> git version 2.11.0




diff --git a/source-builder/sb/git.py b/source-builder/sb/git.py                                                              
index be23396..50aacae 100644                                                                                                 
--- a/source-builder/sb/git.py
+++ b/source-builder/sb/git.py
@@ -34,9 +34,9 @@ import path
 class repo:
     """An object to manage a git repo."""
 
-    def _git_exit_code(self, ec):
+    def _git_exit_code(self, ec, cmd):
         if ec:
-            raise error.general('git command failed (%s): %d' % (self.git, ec))
+            raise error.general('git command failed (%s): %d' % (cmd, ec))
 
     def _run(self, args, check = False):
         e = execute.capture_execution()
@@ -49,7 +49,7 @@ class repo:
         exit_code, proc, output = e.spawn(cmd, cwd = path.host(cwd))
         log.trace(output)
         if check:
-            self._git_exit_code(exit_code)
+            self._git_exit_code(exit_code, cmd)
         return exit_code, output
 
     def __init__(self, _path, opts = None, macros = None):


More information about the users mailing list