docs: def branches(self):
          """
          Returns a data frame of all branches in origin.  The DataFrame will have the columns:
  
           * repository
           * local
           * branch
  
          :returns: DataFrame
          """
  
          df = pd.DataFrame(columns=['repository', 'local', 'branch'])
  
          if _has_joblib:
              ds = Parallel(n_jobs=-1, backend='threading', verbose=0)(
                  delayed(_branches_func)
                  (x) for x in self.repos
              )
              for d in ds:
                  df = df.append(d)
          else:
              for repo in self.repos:
                  try:
                      df = df.append(_branches_func(repo))
                  except GitCommandError:
                      print('Warning! Repo: %s couldn\'t be inspected' % (repo, ))
  
          df.reset_index()
  
          return df