code: def _run_git_command(cls, cmd, **opts):
          
  
          if '_bare' in opts:
              _copts = []
              del opts['_bare']
          else:
              _copts = ['-c', 'core.quotepath=false', ]
          safe_call = False
          if '_safe' in opts:
              #no exc on failure
              del opts['_safe']
              safe_call = True
  
          _str_cmd = False
          if isinstance(cmd, basestring):
              cmd = [cmd]
              _str_cmd = True
  
          gitenv = os.environ
          # need to clean fix GIT_DIR !
          if 'GIT_DIR' in gitenv:
              del gitenv['GIT_DIR']
          gitenv['GIT_CONFIG_NOGLOBAL'] = '1'
  
          _git_path = settings.GIT_EXECUTABLE_PATH
          cmd = [_git_path] + _copts + cmd
          if _str_cmd:
              cmd = ' '.join(cmd)
          try:
              _opts = dict(
                  env=gitenv,
                  shell=False,
              )
              _opts.update(opts)
              p = subprocessio.SubprocessIOChunker(cmd, **_opts)
          except (EnvironmentError, OSError), err:
              tb_err = ("Couldn't run git command (%s).\n"
                        "Original error was:%s\n" % (cmd, err))
              if safe_call:
                  return '', err
              else:
                  raise RepositoryError(tb_err)
  
          return ''.join(p.output), ''.join(p.error)
docs: Runs given ``cmd`` as git command and returns tuple
          (stdout, stderr).
  
          :param cmd: git command to be executed
          :param opts: env options to pass into Subprocess command