All classes:
- git.objects.blob.Blob
- git.db.GitCmdObjectDB
- git.index.util.TemporaryFileSwap
- git.index.typ.BlobFilter
- git.index.typ.BaseIndexEntryHelper
- git.index.typ.BaseIndexEntry
- git.index.typ.IndexEntry
- git.refs.head.HEAD
- git.refs.head.Head
- git.remote.PushInfo
- git.remote.PushInfoList
- git.remote.FetchInfo
- git.remote.Remote
- git.refs.remote.RemoteReference
- git.refs.tag.TagReference
- git.refs.log.RefLogEntry
- git.refs.log.RefLog
- git.refs.symbolic.SymbolicReference
- git.refs.reference.Reference
- git.index.base.IndexFile
- git.repo.base.BlameEntry
- git.repo.base.Repo
- git.repo.base.Repo.blame.InfoTD
- git.config.MetaParserBuilder
- git.config.SectionConstraint
- git.config._OMD
- git.config.GitConfigParser
- git.objects.submodule.util.SubmoduleConfigParser
- git.objects.submodule.base.UpdateProgress
- git.objects.submodule.base.Submodule
- git.objects.submodule.root.RootUpdateProgress
- git.objects.submodule.root.RootModule
- git.objects.tree.TreeModifier
- git.objects.tree.Tree
- git.diff.DiffConstants
- git.diff.Diffable
- git.diff.DiffIndex
- git.diff.Diff
- git.objects.commit.Commit
- git.objects.tag.TagObject
- git.objects.util.TraverseNT
- git.objects.util.tzoffset
- git.objects.util.ProcessStreamAdapter
- git.objects.util.Traversable
- git.objects.util.Serializable
- git.objects.util.TraversableIterableObj
- git.objects.base.Object
- git.objects.base.IndexObject
- git.types.Files_TD
- git.types.Total_TD
- git.types.HSH_TD
- git.types.Has_Repo
- git.types.Has_id_attribute
- git.cmd._GitMeta
- git.cmd.Git
- git.cmd.Git.AutoInterrupt
- git.cmd.Git.CatFileContentStream
- git.util.RemoteProgress
- git.util.CallableRemoteProgress
- git.util.Actor
- git.util.Stats
- git.util.IndexFileSHA1Writer
- git.util.LockFile
- git.util.BlockingLockFile
- git.util.IterableList
- git.util.IterableObj
- git.util.IterableClassWatcher
- git.util.Iterable
- git.exc.GitError
- git.exc.InvalidGitRepositoryError
- git.exc.WorkTreeRepositoryUnsupported
- git.exc.NoSuchPathError
- git.exc.UnsafeProtocolError
- git.exc.UnsafeOptionError
- git.exc.CommandError
- git.exc.GitCommandNotFound
- git.exc.GitCommandError
- git.exc.CheckoutError
- git.exc.CacheError
- git.exc.UnmergedEntriesError
- git.exc.HookExecutionError
- git.exc.RepositoryDirtyError
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...gitpython.fuzzing.fuzz-targets.fuzz_repo'
    functionSourceFile: '...gitpython.fuzzing.fuzz-targets.fuzz_repo'
    functionUses: 0
    functionsReached:
    - os.path.dirname
    - os.path.abspath
    - atheris.Fuzz
    - atheris.Setup
    - '...gitpython.fuzzing.fuzz-targets.fuzz_repo.main'
    - <builtin>.hasattr
    - atheris.instrument_imports
    - <builtin>.getattr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.dirname
    functionSourceFile: os
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.join
    functionSourceFile: os
    functionUses: 101
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.abspath
    functionSourceFile: os
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_imports
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 15
    functionName: '...gitpython.fuzzing.fuzz-targets.fuzz_repo.TestOneInput'
    functionSourceFile: '...gitpython.fuzzing.fuzz-targets.fuzz_repo'
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - git.repo.base.Repo.__init__
    - git.repo.fun.find_worktree_git_dir
    - os.environ.get
    - fdp.ConsumeBytes
    - subprocess.Popen
    - repo.index.add
    - git.init
    - datetime.timedelta.resolve
    - git.repo.base.Repo._get_config_path
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - warnings.warn
    - git.repo.base.Repo.config_reader
    - os.path.split
    - git.cmd.Popen.resolve
    - git.util.LockFile._lock_file_path
    - git.repo.base.Repo.init
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - stream.read
    - git.types.assert_never
    - <builtin>.isinstance
    - pathlib.Path.read_text
    - _is_cygwin_cache.get
    - process.communicate
    - <builtin>.min
    - out.append
    - stat.S_ISREG
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - <builtin>.ord
    - git.repo.base.Repo._config_reader
    - typing.IO.tree.resolve
    - f.write
    - <builtin>.ValueError
    - line.strip
    - configparser.RawConfigParser.__init__
    - os.path.expandvars
    - typing.cast.tree.resolve
    - os.makedirs
    - git.compat.safe_decode
    - git.util.LockFile._has_lock
    - os.readlink
    - os.path.exists
    - git.util.cygpath
    - fp.read
    - content.startswith
    - git.util.py_where
    - git.util.LockFile._obtain_lock
    - git.db.GitCmdObjectDB.__init__
    - configparser.RawConfigParser.has_option
    - os.path.dirname
    - typing.cast.object.resolve
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - os.path.isdir
    - os.access
    - typing.cast.object.head.commit.tree.resolve
    - fdp.ConsumeUnicodeNoSurrogates
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.resolve
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - typing.cast
    - git.config.GitConfigParser.__init__
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - os.path.abspath
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - os.path.islink
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.tree.object.resolve
    - git.util.LockFile.__init__
    - git.objects.tree.Tree._deserialize
    - os.path.expanduser
    - tempfile.TemporaryDirectory
    - regex.match
    - os.getenv
    - fpath.upper
    - fdp.ConsumeIntInRange
    - io.BytesIO
    - typing.BinaryIO.tree.resolve
    - repo.index.commit
    - <builtin>.str
    - folder.strip
    - typing.cast.tree.object.head.commit.resolve
    - datetime.timedelta.tree.resolve
    - os.stat
    - atheris.FuzzedDataProvider
    - progs.append
    - git.cmd.Popen.tree.resolve
    - configparser.RawConfigParser.get
    - pathlib.Path
    - git.util.expand_path
    - typing.cast.object.tree.resolve
    - <builtin>.hasattr
    - os.getcwd
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - <builtin>.range
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - match.groups
    - subprocess.Popen.tree.resolve
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.objects.fun.tree_entries_from_data
    - typing.BinaryIO.resolve
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tempfile.TemporaryDirectory
    functionSourceFile: tempfile
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b6193d0>
    - <ast.Constant object at 0x7fab5b619550>
    - <ast.Name object at 0x7fab5b619430>
    - <ast.Constant object at 0x7fab5b619d30>
    argNames:
    - cls
    - path
    - mkdir
    - odbt
    - expand_vars
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1300
    functionName: git.repo.base.Repo.init
    functionSourceFile: git.repo.base
    functionUses: 1
    functionsReached:
    - typing.cast.object.head.commit.resolve
    - <builtin>.open
    - git.repo.base.Repo.__init__
    - git.repo.fun.find_worktree_git_dir
    - os.environ.get
    - subprocess.Popen
    - git.init
    - datetime.timedelta.resolve
    - git.repo.base.Repo._get_config_path
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - warnings.warn
    - git.repo.base.Repo.config_reader
    - os.path.split
    - git.cmd.Popen.resolve
    - git.util.LockFile._lock_file_path
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - git.types.assert_never
    - <builtin>.isinstance
    - pathlib.Path.read_text
    - _is_cygwin_cache.get
    - process.communicate
    - stat.S_ISREG
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.repo.base.Repo._config_reader
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - line.strip
    - configparser.RawConfigParser.__init__
    - os.path.expandvars
    - typing.cast.tree.resolve
    - os.makedirs
    - git.util.LockFile._has_lock
    - os.readlink
    - os.path.exists
    - git.util.cygpath
    - fp.read
    - git.util.py_where
    - content.startswith
    - git.util.LockFile._obtain_lock
    - git.db.GitCmdObjectDB.__init__
    - configparser.RawConfigParser.has_option
    - os.path.dirname
    - typing.cast.object.resolve
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - os.path.isdir
    - os.access
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.resolve
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - os.path.abspath
    - <builtin>.issubclass
    - os.path.normpath
    - os.path.islink
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.tree.object.resolve
    - git.util.LockFile.__init__
    - os.path.expanduser
    - regex.match
    - os.getenv
    - fpath.upper
    - typing.BinaryIO.tree.resolve
    - <builtin>.str
    - folder.strip
    - typing.cast.tree.object.head.commit.resolve
    - datetime.timedelta.tree.resolve
    - os.stat
    - progs.append
    - git.cmd.Popen.tree.resolve
    - configparser.RawConfigParser.get
    - pathlib.Path
    - git.util.expand_path
    - typing.cast.object.tree.resolve
    - <builtin>.hasattr
    - os.getcwd
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - match.groups
    - subprocess.Popen.tree.resolve
    - os.path.isabs
    - git.util.is_cygwin_git
    - typing.BinaryIO.resolve
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeIntInRange
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.min
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 50
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.open
    functionSourceFile: <builtin>
    functionUses: 75
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeBytes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.write
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.index.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.index.commit
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO
    functionSourceFile: io
    functionUses: 35
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 406
    functionName: git.objects.tree.Tree._deserialize
    functionSourceFile: git.objects.tree
    functionUses: 1
    functionsReached:
    - stream.read
    - s.decode
    - <builtin>.ord
    - <builtin>.isinstance
    - git.objects.fun.tree_entries_from_data
    - git.compat.safe_decode
    - <builtin>.len
    - out.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: '...gitpython.fuzzing.fuzz-targets.fuzz_repo.main'
    functionSourceFile: '...gitpython.fuzzing.fuzz-targets.fuzz_repo'
    functionUses: 1
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: git
    functionSourceFile: git
    functionUses: 0
    functionsReached:
    - typing.cast.object.resolve
    - <builtin>.super
    - textwrap.dedent
    - os.path.expanduser
    - typing.cast.object.head.commit.resolve
    - git.cmd.Git.__init__
    - os.environ.get
    - typing.BinaryIO.tree.resolve
    - typing.cast.tree.object.head.commit.resolve
    - typing.IO.tree.resolve
    - typing.cast.object.head.commit.tree.resolve
    - _logger.critical
    - datetime.timedelta.tree.resolve
    - datetime.timedelta.resolve
    - typing.IO.resolve
    - subprocess.Popen.resolve
    - typing.cast.tree.head.commit.resolve
    - git.cmd.Popen.tree.resolve
    - typing.cast.resolve
    - os.path.expandvars
    - typing.cast.head.commit.tree.resolve
    - git.util.expand_path
    - typing.cast.tree.resolve
    - git.cmd.Popen.resolve
    - typing.cast.object.tree.resolve
    - contextlib.suppress
    - git.cmd.Git.refresh
    - os.path.abspath
    - typing.cast.head.commit.resolve
    - <builtin>.isinstance
    - git.refresh
    - os.path.normpath
    - subprocess.Popen.tree.resolve
    - <builtin>.object
    - typing.BinaryIO.resolve
    - git.remote.FetchInfo.refresh
    - typing.cast.tree.object.resolve
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - message
    - fullname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: git._warned_import
    functionSourceFile: git
    functionUses: 1
    functionsReached:
    - warnings.warn
    - importlib.import_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib.import_module
    functionSourceFile: importlib
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 195
    functionName: git._getattr
    functionSourceFile: git
    functionUses: 0
    functionsReached:
    - warnings.warn
    - git._warned_import
    - importlib.import_module
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b0caf40>
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 263
    functionName: git.refresh
    functionSourceFile: git
    functionUses: 1
    functionsReached:
    - typing.cast.object.resolve
    - <builtin>.super
    - textwrap.dedent
    - os.path.expanduser
    - typing.cast.object.head.commit.resolve
    - git.cmd.Git.__init__
    - os.environ.get
    - typing.BinaryIO.tree.resolve
    - typing.cast.tree.object.head.commit.resolve
    - typing.IO.tree.resolve
    - typing.cast.object.head.commit.tree.resolve
    - _logger.critical
    - datetime.timedelta.tree.resolve
    - datetime.timedelta.resolve
    - typing.IO.resolve
    - subprocess.Popen.resolve
    - typing.cast.tree.head.commit.resolve
    - git.cmd.Popen.tree.resolve
    - typing.cast.resolve
    - os.path.expandvars
    - typing.cast.head.commit.tree.resolve
    - git.util.expand_path
    - typing.cast.tree.resolve
    - git.cmd.Popen.resolve
    - typing.cast.object.tree.resolve
    - contextlib.suppress
    - git.cmd.Git.refresh
    - os.path.abspath
    - typing.cast.head.commit.resolve
    - <builtin>.isinstance
    - os.path.normpath
    - subprocess.Popen.tree.resolve
    - <builtin>.object
    - typing.BinaryIO.resolve
    - git.remote.FetchInfo.refresh
    - typing.cast.tree.object.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 3
    IfCount: 6
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b397af0>
    argNames:
    - cls
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 497
    functionName: git.cmd.Git.refresh
    functionSourceFile: git.cmd
    functionUses: 2
    functionsReached:
    - typing.cast.object.resolve
    - textwrap.dedent
    - <builtin>.super
    - os.path.expanduser
    - typing.cast.object.head.commit.resolve
    - git.cmd.Git.__init__
    - os.environ.get
    - typing.BinaryIO.tree.resolve
    - typing.cast.tree.object.head.commit.resolve
    - typing.IO.tree.resolve
    - _logger.critical
    - typing.cast.object.head.commit.tree.resolve
    - datetime.timedelta.tree.resolve
    - datetime.timedelta.resolve
    - typing.IO.resolve
    - subprocess.Popen.resolve
    - typing.cast.tree.head.commit.resolve
    - git.cmd.Popen.tree.resolve
    - typing.cast.resolve
    - os.path.expandvars
    - typing.cast.head.commit.tree.resolve
    - git.util.expand_path
    - typing.cast.tree.resolve
    - git.cmd.Popen.resolve
    - typing.cast.object.tree.resolve
    - os.path.abspath
    - typing.cast.head.commit.resolve
    - <builtin>.isinstance
    - os.path.normpath
    - subprocess.Popen.tree.resolve
    - <builtin>.object
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.resolve
    linkageType: pythonLinkage
    raised:
    - GitCommandNotFound
    - ImportError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 331
    functionName: git.remote.FetchInfo.refresh
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached:
    - typing.cast.object.resolve
    - <builtin>.super
    - os.path.expanduser
    - typing.cast.object.head.commit.resolve
    - git.cmd.Git.__init__
    - typing.BinaryIO.tree.resolve
    - typing.cast.tree.object.head.commit.resolve
    - typing.IO.tree.resolve
    - typing.cast.object.head.commit.tree.resolve
    - datetime.timedelta.tree.resolve
    - datetime.timedelta.resolve
    - typing.IO.resolve
    - subprocess.Popen.resolve
    - typing.cast.tree.head.commit.resolve
    - git.cmd.Popen.tree.resolve
    - typing.cast.resolve
    - os.path.expandvars
    - typing.cast.head.commit.tree.resolve
    - git.util.expand_path
    - typing.cast.tree.resolve
    - git.cmd.Popen.resolve
    - typing.cast.object.tree.resolve
    - contextlib.suppress
    - os.path.abspath
    - typing.cast.head.commit.resolve
    - <builtin>.isinstance
    - os.path.normpath
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.exc
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ae20820>
    - <ast.Constant object at 0x7fab5ae20130>
    - <ast.Constant object at 0x7fab5ae20be0>
    argNames:
    - self
    - command
    - status
    - stderr
    - stdout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 101
    functionName: git.exc.CommandError.__init__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached:
    - git.util.remove_password_if_present
    - urllib.parse.urlsplit.netloc.replace
    - new_cmdline.append
    - s.decode
    - <builtin>.int
    - urllib.parse.urlsplit
    - <builtin>.isinstance
    - <builtin>.enumerate
    - command.split
    - <builtin>.type
    - git.compat.safe_decode
    - <builtin>.str
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit._replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 181
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: command.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - cmdline
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 529
    functionName: git.util.remove_password_if_present
    functionSourceFile: git.util
    functionUses: 20
    functionsReached:
    - urllib.parse.urlsplit.netloc.replace
    - new_cmdline.append
    - urllib.parse.urlsplit
    - <builtin>.enumerate
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit._replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.type
    functionSourceFile: <builtin>
    functionUses: 47
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 145
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: git.compat.safe_decode
    functionSourceFile: git.compat
    functionUses: 26
    functionsReached:
    - s.decode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 60
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 130
    functionName: git.exc.CommandError.__str__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - command
    - cause
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 144
    functionName: git.exc.GitCommandNotFound.__init__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 147
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b17a220>
    - <ast.Constant object at 0x7fab5b17aac0>
    - <ast.Constant object at 0x7fab5b17a6d0>
    argNames:
    - self
    - command
    - status
    - stderr
    - stdout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: git.exc.GitCommandError.__init__
    functionSourceFile: git.exc
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - message
    - failed_files
    - valid_files
    - failed_reasons
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 176
    functionName: git.exc.CheckoutError.__init__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached:
    - Exception.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Exception.__init__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: git.exc.CheckoutError.__str__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached:
    - Exception.__str__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Exception.__str__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad715b0>
    - <ast.Constant object at 0x7fab5ad71670>
    argNames:
    - self
    - command
    - status
    - stderr
    - stdout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 208
    functionName: git.exc.HookExecutionError.__init__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - repo
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 223
    functionName: git.exc.RepositoryDirtyError.__init__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 227
    functionName: git.exc.RepositoryDirtyError.__str__
    functionSourceFile: git.exc
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.repo.base
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.getLogger
    functionSourceFile: logging
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast
    functionSourceFile: typing
    functionUses: 110
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.repo.base.Repo
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast
    - re.compile
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 18
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 26
    ICount: 2
    IfCount: 18
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5acbd5e0>
    - <ast.Name object at 0x7fab5acbd790>
    - <ast.Constant object at 0x7fab5acbdfd0>
    - <ast.Constant object at 0x7fab5acbddf0>
    argNames:
    - self
    - path
    - odbt
    - search_parent_directories
    - expand_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 172
    functionName: git.repo.base.Repo.__init__
    functionSourceFile: git.repo.base
    functionUses: 22
    functionsReached:
    - typing.cast.object.head.commit.resolve
    - <builtin>.open
    - git.repo.fun.find_worktree_git_dir
    - os.environ.get
    - subprocess.Popen
    - datetime.timedelta.resolve
    - git.repo.base.Repo._get_config_path
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - warnings.warn
    - git.repo.base.Repo.config_reader
    - os.path.split
    - git.cmd.Popen.resolve
    - git.util.LockFile._lock_file_path
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - git.types.assert_never
    - <builtin>.isinstance
    - pathlib.Path.read_text
    - _is_cygwin_cache.get
    - process.communicate
    - stat.S_ISREG
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.repo.base.Repo._config_reader
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - line.strip
    - configparser.RawConfigParser.__init__
    - os.path.expandvars
    - typing.cast.tree.resolve
    - git.util.LockFile._has_lock
    - os.readlink
    - git.util.cygpath
    - os.path.exists
    - fp.read
    - git.util.py_where
    - content.startswith
    - git.util.LockFile._obtain_lock
    - git.db.GitCmdObjectDB.__init__
    - configparser.RawConfigParser.has_option
    - os.path.dirname
    - typing.cast.object.resolve
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - os.path.isdir
    - os.access
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.resolve
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - os.path.abspath
    - <builtin>.issubclass
    - os.path.normpath
    - os.path.islink
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.tree.object.resolve
    - git.util.LockFile.__init__
    - os.path.expanduser
    - regex.match
    - os.getenv
    - fpath.upper
    - typing.BinaryIO.tree.resolve
    - <builtin>.str
    - folder.strip
    - typing.cast.tree.object.head.commit.resolve
    - datetime.timedelta.tree.resolve
    - os.stat
    - progs.append
    - git.cmd.Popen.tree.resolve
    - configparser.RawConfigParser.get
    - pathlib.Path
    - git.util.expand_path
    - typing.cast.object.tree.resolve
    - <builtin>.hasattr
    - os.getcwd
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - match.groups
    - subprocess.Popen.tree.resolve
    - os.path.isabs
    - git.util.is_cygwin_git
    - typing.BinaryIO.resolve
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised:
    - InvalidGitRepositoryError
    - NoSuchPathError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getenv
    functionSourceFile: os
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getcwd
    functionSourceFile: os
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 663
    functionName: git.cmd.Git.is_cygwin
    functionSourceFile: git.cmd
    functionUses: 28
    functionsReached:
    - os.path.dirname
    - git.util._get_exe_extensions
    - os.environ.get
    - fpath.upper
    - folder.strip
    - <builtin>.str
    - subprocess.Popen
    - os.access
    - progs.append
    - PATHEXT.split
    - p.upper
    - os.path.isfile
    - <builtin>.tuple
    - git.util._is_cygwin_git
    - os.path.join
    - git.util.py_where.is_exec
    - git.util.py_where
    - _is_cygwin_cache.get
    - process.communicate
    - git.util.is_cygwin_git
    - _logger.debug
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 419
    functionName: git.util.cygpath
    functionSourceFile: git.util
    functionUses: 29
    functionsReached:
    - git.util.cygpath
    - match.groups
    - regex.match
    - <builtin>.str
    - path.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.search
    functionSourceFile: re
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b7320a0>
    argNames:
    - p
    - expand_vars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 517
    functionName: git.util.expand_path
    functionSourceFile: git.util
    functionUses: 28
    functionsReached:
    - typing.cast.object.resolve
    - os.path.expanduser
    - typing.cast.object.head.commit.resolve
    - typing.BinaryIO.tree.resolve
    - typing.cast.tree.object.head.commit.resolve
    - typing.IO.tree.resolve
    - typing.cast.object.head.commit.tree.resolve
    - datetime.timedelta.tree.resolve
    - datetime.timedelta.resolve
    - typing.IO.resolve
    - subprocess.Popen.resolve
    - typing.cast.tree.head.commit.resolve
    - git.cmd.Popen.tree.resolve
    - typing.cast.resolve
    - os.path.expandvars
    - typing.cast.head.commit.tree.resolve
    - typing.cast.tree.resolve
    - git.cmd.Popen.resolve
    - typing.cast.object.tree.resolve
    - os.path.abspath
    - typing.cast.head.commit.resolve
    - <builtin>.isinstance
    - os.path.normpath
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.exists
    functionSourceFile: os
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: git.repo.fun.is_git_dir
    functionSourceFile: git.repo.fun
    functionUses: 24
    functionsReached:
    - os.readlink
    - os.path.isfile
    - os.path.islink
    - os.path.isdir
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - WorkTreeRepositoryUnsupported
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.get
    functionSourceFile: os
    functionUses: 56
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b445bb0>
    - <ast.Constant object at 0x7fab5b4455e0>
    argNames:
    - self
    - config_level
    - git_dir
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 683
    functionName: git.repo.base.Repo._config_reader
    functionSourceFile: git.repo.base
    functionUses: 31
    functionsReached:
    - git.util.LockFile.__init__
    - os.path.expanduser
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.open
    - os.environ.get
    - git.repo.base.Repo._get_config_path
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - os.path.isfile
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - git.util.LockFile._has_lock
    - os.path.join
    - <builtin>.hasattr
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.has_option
    functionSourceFile: configparser
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.get
    functionSourceFile: configparser
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 99
    functionName: git.repo.fun.find_submodule_git_dir
    functionSourceFile: git.repo.fun
    functionUses: 23
    functionsReached:
    - os.path.dirname
    - <builtin>.open
    - git.util._get_exe_extensions
    - regex.match
    - os.environ.get
    - fpath.upper
    - folder.strip
    - <builtin>.str
    - os.path.isdir
    - subprocess.Popen
    - os.access
    - progs.append
    - PATHEXT.split
    - path.startswith
    - p.upper
    - os.path.isfile
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - git.util._is_cygwin_git
    - os.path.join
    - os.readlink
    - git.util.py_where.is_exec
    - git.util.cygpath
    - fp.read
    - content.startswith
    - git.util.py_where
    - git.cmd.Git.is_cygwin
    - match.groups
    - os.path.normpath
    - _is_cygwin_cache.get
    - process.communicate
    - os.path.isabs
    - os.path.islink
    - git.util.is_cygwin_git
    - _logger.debug
    - <builtin>.any
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.normpath
    functionSourceFile: os
    functionUses: 50
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - dotgit
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: git.repo.fun.find_worktree_git_dir
    functionSourceFile: git.repo.fun
    functionUses: 23
    functionsReached:
    - stat.S_ISREG
    - line.strip
    - pathlib.Path
    - os.stat
    - pathlib.Path.read_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.split
    functionSourceFile: os
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b4456d0>
    argNames:
    - self
    - config_level
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 660
    functionName: git.repo.base.Repo.config_reader
    functionSourceFile: git.repo.base
    functionUses: 30
    functionsReached:
    - git.util.LockFile.__init__
    - os.path.expanduser
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.open
    - os.environ.get
    - git.repo.base.Repo._config_reader
    - git.repo.base.Repo._get_config_path
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - os.path.isfile
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - git.util.LockFile._has_lock
    - os.path.join
    - <builtin>.hasattr
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.getboolean
    functionSourceFile: configparser
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path
    functionSourceFile: pathlib
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path.read_text
    functionSourceFile: pathlib
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ae8ebe0>
    argNames:
    - self
    - working_dir
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 947
    functionName: git.cmd.Git.__init__
    functionSourceFile: git.cmd
    functionUses: 27
    functionsReached:
    - typing.cast.object.resolve
    - <builtin>.super
    - os.path.expanduser
    - typing.cast.object.head.commit.resolve
    - typing.BinaryIO.tree.resolve
    - typing.cast.tree.object.head.commit.resolve
    - typing.IO.tree.resolve
    - typing.cast.object.head.commit.tree.resolve
    - datetime.timedelta.tree.resolve
    - datetime.timedelta.resolve
    - typing.IO.resolve
    - subprocess.Popen.resolve
    - typing.cast.tree.head.commit.resolve
    - git.cmd.Popen.tree.resolve
    - typing.cast.resolve
    - os.path.expandvars
    - typing.cast.head.commit.tree.resolve
    - git.util.expand_path
    - typing.cast.tree.resolve
    - git.cmd.Popen.resolve
    - typing.cast.object.tree.resolve
    - os.path.abspath
    - typing.cast.head.commit.resolve
    - <builtin>.isinstance
    - os.path.normpath
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.issubclass
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - root_path
    - git
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: git.db.GitCmdObjectDB.__init__
    functionSourceFile: git.db
    functionUses: 23
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 321
    functionName: git.repo.base.Repo.__enter__
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 324
    functionName: git.repo.base.Repo.__exit__
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.clear_cache
    - gitdb.util.mman.collect
    - typing.cast.clear_cache
    - git.repo.base.Repo.close
    - gc.collect
    - cmd.__del__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 333
    functionName: git.repo.base.Repo.close
    functionSourceFile: git.repo.base
    functionUses: 2
    functionsReached:
    - git.cmd.Git.clear_cache
    - gitdb.util.mman.collect
    - typing.cast.clear_cache
    - gc.collect
    - cmd.__del__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 327
    functionName: git.repo.base.Repo.__del__
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.clear_cache
    - gitdb.util.mman.collect
    - typing.cast.clear_cache
    - git.repo.base.Repo.close
    - gc.collect
    - cmd.__del__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1709
    functionName: git.cmd.Git.clear_cache
    functionSourceFile: git.cmd
    functionUses: 3
    functionsReached:
    - cmd.__del__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.clear_cache
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gc.collect
    functionSourceFile: gc
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.mman.collect
    functionSourceFile: gitdb
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rhs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 346
    functionName: git.repo.base.Repo.__eq__
    functionSourceFile: git.repo.base
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rhs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 351
    functionName: git.repo.base.Repo.__ne__
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.repo.base.Repo.__eq__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 354
    functionName: git.repo.base.Repo.__hash__
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hash
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 358
    functionName: git.repo.base.Repo._get_description
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - os.path.join
    - fp.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.read
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - descr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 363
    functionName: git.repo.base.Repo._set_description
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - fp.write
    - <builtin>.open
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.write
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.property
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 373
    functionName: git.repo.base.Repo.working_tree_dir
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 382
    functionName: git.repo.base.Repo.common_dir
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 391
    functionName: git.repo.base.Repo.bare
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 396
    functionName: git.repo.base.Repo.heads
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1271
    functionName: git.util.IterableObj.list_items
    functionSourceFile: git.util
    functionUses: 11
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 406
    functionName: git.repo.base.Repo.branches
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 417
    functionName: git.repo.base.Repo.references
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 427
    functionName: git.repo.base.Repo.refs
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 438
    functionName: git.repo.base.Repo.index
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.util.join_path_native
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.to_native_path_linux
    - git.util.to_native_path_windows
    - git.util.join_path
    - b.startswith
    - typing.cast.working_tree_dir.replace
    - git.index.base.IndexFile.__init__
    - path.replace
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - git.index.base.IndexFile._index_path
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bea4820>
    argNames:
    - self
    - repo
    - file_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 140
    functionName: git.index.base.IndexFile.__init__
    functionSourceFile: git.index.base
    functionUses: 3
    functionsReached:
    - git.util.join_path_native
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.to_native_path_linux
    - git.util.to_native_path_windows
    - git.util.join_path
    - b.startswith
    - typing.cast.working_tree_dir.replace
    - path.replace
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - git.index.base.IndexFile._index_path
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 451
    functionName: git.repo.base.Repo.head
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.refs.head.HEAD.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7fab5ad5ae80>
    argNames:
    - self
    - repo
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: git.refs.head.HEAD.__init__
    functionSourceFile: git.refs.head
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 459
    functionName: git.repo.base.Repo.remotes
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b5152b0>
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 468
    functionName: git.repo.base.Repo.remote
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.remote.Remote.exists
    - git.remote.Remote.__init__
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - repo
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 555
    functionName: git.remote.Remote.__init__
    functionSourceFile: ''
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 610
    functionName: git.remote.Remote.exists
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 482
    functionName: git.repo.base.Repo.submodules
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - Submodule.list_items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Submodule.list_items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 490
    functionName: git.repo.base.Repo.submodule
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 502
    functionName: git.repo.base.Repo.create_submodule
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - Submodule.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Submodule.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 514
    functionName: git.repo.base.Repo.iter_submodules
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 525
    functionName: git.repo.base.Repo.submodule_update
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 538
    functionName: git.repo.base.Repo.tags
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 547
    functionName: git.repo.base.Repo.tag
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - path_str.startswith
    - git.repo.base.Repo._to_full_tag_path
    - git.refs.reference.Reference.__init__
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 560
    functionName: git.repo.base.Repo._to_full_tag_path
    functionSourceFile: git.repo.base
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - path_str.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5af493a0>
    argNames:
    - self
    - repo
    - path
    - check_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: git.refs.reference.Reference.__init__
    functionSourceFile: git.refs.reference
    functionUses: 6
    functionsReached:
    - <builtin>.str
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path_str.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b28a5e0>
    - <ast.Constant object at 0x7fab5b28abb0>
    - <ast.Constant object at 0x7fab5b28a760>
    argNames:
    - self
    - path
    - commit
    - force
    - logmsg
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 569
    functionName: git.repo.base.Repo.create_head
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.refs.tag.TagReference.create
    - <builtin>.super
    - git.refs.remote.RemoteReference.create
    - git.refs.reference.Reference.__init__
    - typing.cast.tag
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bea7fd0>
    - <ast.Constant object at 0x7fab5bea7250>
    - <ast.Constant object at 0x7fab5bea7340>
    argNames:
    - cls
    - repo
    - path
    - reference
    - logmsg
    - force
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 88
    functionName: git.refs.tag.TagReference.create
    functionSourceFile: git.refs.tag
    functionUses: 3
    functionsReached:
    - typing.cast.tag
    - <builtin>.str
    - <builtin>.super
    - git.refs.reference.Reference.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: git.refs.remote.RemoteReference.create
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - heads
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 587
    functionName: git.repo.base.Repo.delete_head
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - os.remove
    - typing.cast.branch
    - git.refs.remote.RemoteReference.delete
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - refs
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: git.refs.remote.RemoteReference.delete
    functionSourceFile: git.refs.remote
    functionUses: 1
    functionsReached:
    - os.remove
    - typing.cast.branch
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b28aa60>
    - <ast.Constant object at 0x7fab5ad5dd90>
    - <ast.Constant object at 0x7fab5ad5d220>
    argNames:
    - self
    - path
    - ref
    - message
    - force
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 595
    functionName: git.repo.base.Repo.create_tag
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.refs.tag.TagReference.create
    - <builtin>.super
    - git.refs.reference.Reference.__init__
    - typing.cast.tag
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 614
    functionName: git.repo.base.Repo.delete_tag
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast.tag
    - git.refs.tag.TagReference.delete
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - tags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 149
    functionName: git.refs.tag.TagReference.delete
    functionSourceFile: git.refs.tag
    functionUses: 1
    functionsReached:
    - typing.cast.tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - url
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 618
    functionName: git.repo.base.Repo.create_remote
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - os.path.dirname
    - os.path.expanduser
    - git.util._get_exe_extensions
    - regex.match
    - os.environ.get
    - fpath.upper
    - <builtin>.str
    - url.startswith
    - folder.strip
    - cls.re_unsafe_protocol.match
    - typing.cast.remote
    - subprocess.Popen
    - os.access
    - url.replace
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Git.polish_url
    - progs.append
    - PATHEXT.split
    - path.startswith
    - p.upper
    - git.remote.Remote.__init__
    - os.path.expandvars
    - os.path.isfile
    - <builtin>.tuple
    - git.util._is_cygwin_git
    - os.path.join
    - git.remote.Remote.create
    - git.util.py_where.is_exec
    - git.util.cygpath
    - git.util.py_where
    - match.groups
    - git.cmd.Git.is_cygwin
    - _is_cygwin_cache.get
    - process.communicate
    - git.util.is_cygwin_git
    - _logger.debug
    - match.group
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b7871f0>
    argNames:
    - cls
    - repo
    - name
    - url
    - allow_unsafe_protocols
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 782
    functionName: git.remote.Remote.create
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached:
    - os.path.dirname
    - os.path.expanduser
    - git.util._get_exe_extensions
    - regex.match
    - os.environ.get
    - fpath.upper
    - <builtin>.str
    - url.startswith
    - folder.strip
    - cls.re_unsafe_protocol.match
    - typing.cast.remote
    - subprocess.Popen
    - os.access
    - url.replace
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Git.polish_url
    - progs.append
    - PATHEXT.split
    - path.startswith
    - p.upper
    - git.remote.Remote.__init__
    - os.path.expandvars
    - os.path.isfile
    - <builtin>.tuple
    - git.util._is_cygwin_git
    - os.path.join
    - git.util.py_where.is_exec
    - git.util.cygpath
    - git.util.py_where
    - match.groups
    - git.cmd.Git.is_cygwin
    - _is_cygwin_cache.get
    - process.communicate
    - git.util.is_cygwin_git
    - _logger.debug
    - match.group
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - remote
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 629
    functionName: git.repo.base.Repo.delete_remote
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - name._clear_cache
    - <builtin>.isinstance
    - git.remote.Remote.remove
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 820
    functionName: git.remote.Remote.remove
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached:
    - typing.cast.remote
    - name._clear_cache
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bf02e80>
    argNames:
    - self
    - config_level
    - git_dir
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 633
    functionName: git.repo.base.Repo._get_config_path
    functionSourceFile: git.repo.base
    functionUses: 37
    functionsReached:
    - git.types.assert_never
    - os.path.expanduser
    - os.path.normpath
    - os.environ.get
    - <builtin>.ValueError
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.expanduser
    functionSourceFile: os
    functionUses: 56
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ValueError
    functionSourceFile: <builtin>
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b40e160>
    - <ast.Constant object at 0x7fab5b40eac0>
    argNames:
    - inp
    - raise_error
    - exc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 215
    functionName: git.types.assert_never
    functionSourceFile: ''
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bc727f0>
    - <ast.Constant object at 0x7fab5b0557c0>
    - <ast.Constant object at 0x7fab5b055130>
    - <ast.Constant object at 0x7fab5b055ac0>
    - <ast.Constant object at 0x7fab5b055a00>
    argNames:
    - self
    - file_or_files
    - read_only
    - merge_includes
    - config_level
    - repo
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 315
    functionName: git.config.GitConfigParser.__init__
    functionSourceFile: git.config
    functionUses: 38
    functionsReached:
    - git.util.LockFile.__init__
    - os.path.expanduser
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.open
    - os.environ.get
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - os.path.isfile
    - typing.cast
    - git.util.LockFile._lock_file_path
    - <builtin>.hasattr
    - git.util.LockFile._has_lock
    - os.path.join
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b71be50>
    argNames:
    - self
    - config_level
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 698
    functionName: git.repo.base.Repo.config_writer
    functionSourceFile: git.repo.base
    functionUses: 11
    functionsReached:
    - git.util.LockFile.__init__
    - os.path.expanduser
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.open
    - os.environ.get
    - git.repo.base.Repo._get_config_path
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - os.path.isfile
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - git.util.LockFile._has_lock
    - os.path.join
    - <builtin>.hasattr
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b71b490>
    argNames:
    - self
    - rev
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 715
    functionName: git.repo.base.Repo.commit
    functionSourceFile: git.repo.base
    functionUses: 9
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 36
    ICount: 1
    IfCount: 25
    argCount: 2
    argDefaultValues: []
    argNames:
    - repo
    - rev
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 230
    functionName: git.repo.fun.rev_parse
    functionSourceFile: git.repo.fun
    functionUses: 27
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - ValueError
    - BadName
    - IndexError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 728
    functionName: git.repo.base.Repo.iter_trees
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.repo.base.Repo.iter_commits
    - Commit.iter_items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bea78b0>
    - <ast.Constant object at 0x7fab5bea70a0>
    argNames:
    - self
    - rev
    - paths
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 758
    functionName: git.repo.base.Repo.iter_commits
    functionSourceFile: git.repo.base
    functionUses: 1
    functionsReached:
    - Commit.iter_items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b348760>
    argNames:
    - self
    - rev
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 736
    functionName: git.repo.base.Repo.tree
    functionSourceFile: git.repo.base
    functionUses: 14
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Commit.iter_items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - rev
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 791
    functionName: git.repo.base.Repo.merge_base
    functionSourceFile: git.repo.base
    functionUses: 1
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - res.append
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - typing.cast.merge_base
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 134
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.merge_base
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: res.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ancestor_rev
    - rev
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 834
    functionName: git.repo.base.Repo.is_ancestor
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast.merge_base
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b5e43a0>
    argNames:
    - self
    - sha
    - object_type
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 854
    functionName: git.repo.base.Repo.is_valid_object
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - _logger.debug
    - object_type.encode
    - object_info.type.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: object_type.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: object_info.type.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _logger.debug
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 874
    functionName: git.repo.base.Repo._get_daemon_export
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - os.path.join
    - os.path.exists
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 879
    functionName: git.repo.base.Repo._set_daemon_export
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - os.path.exists
    - git.repo.fun.touch
    - <builtin>.open
    - os.unlink
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - filename
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: git.repo.fun.touch
    functionSourceFile: git.repo.fun
    functionUses: 1
    functionsReached:
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.unlink
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 896
    functionName: git.repo.base.Repo._get_alternates
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - os.path.exists
    - <builtin>.open
    - alts.strip
    - f.read
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.read
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alts.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - alts
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 911
    functionName: git.repo.base.Repo._set_alternates
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - os.path.isfile
    - <builtin>.open
    - os.remove
    - f.write
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isfile
    functionSourceFile: os
    functionUses: 75
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.remove
    functionSourceFile: os
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b253f40>
    - <ast.Constant object at 0x7fab5b2533d0>
    - <ast.Constant object at 0x7fab5b253430>
    - <ast.Constant object at 0x7fab5b253850>
    - <ast.Constant object at 0x7fab5b253d60>
    argNames:
    - self
    - index
    - working_tree
    - untracked_files
    - submodules
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 938
    functionName: git.repo.base.Repo.is_dirty
    functionSourceFile: git.repo.base
    functionUses: 2
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.BinaryIO.tree.stderr.read
    - git.repo.base.Repo._get_untracked_files
    - datetime.timedelta.stderr.read
    - typing.BinaryIO.tree.wait
    - typing.cast.object.tree.wait
    - typing.IO.wait
    - gitdb.utils.encoding.force_bytes
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.BinaryIO.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - default_args.append
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - os.path.isfile
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.tree.stderr.read
    - typing.cast.diff
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - default_args.extend
    - typing.cast.object.head.commit.tree.stderr.read
    - line.startswith
    - <builtin>.len
    - typing.cast.tree.object.wait
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - filename.encode
    - typing.cast.tree.head.commit.wait
    - untracked_files.append
    - typing.BinaryIO.wait
    - git.cmd.Popen.stderr.read
    - _logger.debug
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.status
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: default_args.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: default_args.extend
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.diff
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 997
    functionName: git.repo.base.Repo._get_untracked_files
    functionSourceFile: git.repo.base
    functionUses: 4
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.object.tree.wait
    - typing.BinaryIO.tree.wait
    - typing.IO.wait
    - gitdb.utils.encoding.force_bytes
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.BinaryIO.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.tree.wait
    - typing.cast.tree.wait
    - git.util.finalize_process
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.tree.object.stderr.read
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.tree.stderr.read
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - line.startswith
    - <builtin>.len
    - typing.cast.tree.object.wait
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - filename.encode
    - typing.cast.tree.head.commit.wait
    - untracked_files.append
    - typing.BinaryIO.wait
    - git.cmd.Popen.stderr.read
    - _logger.debug
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.status
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 980
    functionName: git.repo.base.Repo.untracked_files
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - git.repo.base.Repo._get_untracked_files
    - typing.BinaryIO.tree.wait
    - typing.cast.object.tree.wait
    - typing.IO.wait
    - gitdb.utils.encoding.force_bytes
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.BinaryIO.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.tree.object.stderr.read
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.tree.stderr.read
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - line.startswith
    - <builtin>.len
    - typing.cast.tree.object.wait
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - filename.encode
    - typing.cast.tree.head.commit.wait
    - untracked_files.append
    - typing.BinaryIO.wait
    - git.cmd.Popen.stderr.read
    - _logger.debug
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.status
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.status
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.decode
    functionSourceFile: <builtin>
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.startswith
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filename.encode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: untracked_files.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - proc
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 500
    functionName: git.util.finalize_process
    functionSourceFile: git.util
    functionUses: 34
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.BinaryIO.tree.wait
    - typing.cast.object.tree.wait
    - typing.IO.wait
    - gitdb.utils.encoding.force_bytes
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.BinaryIO.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.tree.wait
    - typing.cast.tree.wait
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.tree.object.stderr.read
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.tree.stderr.read
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.tree.object.wait
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.wait
    - typing.BinaryIO.wait
    - git.cmd.Popen.stderr.read
    - _logger.debug
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - paths
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1017
    functionName: git.repo.base.Repo.ignored
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast.check_ignore
    - proc.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.check_ignore
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1042
    functionName: git.repo.base.Repo.active_branch
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - rev
    - file
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1054
    functionName: git.repo.base.Repo.blame_incremental
    functionSourceFile: git.repo.base
    functionUses: 1
    functionsReached:
    - typing.NamedTuple.__init__
    - <builtin>.range
    - <builtin>.next
    - s.decode
    - <builtin>.int
    - data.split
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - line.split
    - git.compat.safe_decode
    - typing.cast.blame
    - git.util.Actor.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.blame
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.next
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.split
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.hex_to_bin
    functionSourceFile: gitdb
    functionUses: 54
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - email
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 789
    functionName: git.util.Actor.__init__
    functionSourceFile: ''
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.NamedTuple.__init__
    functionSourceFile: ''
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 30
    ICount: 4
    IfCount: 21
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bee8be0>
    - <ast.Constant object at 0x7fab5bee8d00>
    argNames:
    - self
    - rev
    - file
    - incremental
    - rev_opts
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1146
    functionName: git.repo.base.Repo.blame
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - firstpart.startswith
    - data.split
    - m.groups
    - cls.name_only_regex.search
    - line.split
    - git.repo.base.Repo.blame_incremental
    - commits.get
    - git.util.Actor._from_string
    - typing.NamedTuple.__init__
    - <builtin>.int
    - m.group
    - cls.name_email_regex.search
    - blames.append
    - <builtin>.next
    - typing.cast.blame
    - git.compat.safe_decode
    - line_bytes.rstrip
    - git.util.Actor.__init__
    - <builtin>.len
    - <builtin>.range
    - s.decode
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - firstpart.endswith
    - data.splitlines
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.splitlines
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_bytes.rstrip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: blames.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.group
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: firstpart.endswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: firstpart.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: commits.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 809
    functionName: git.util.Actor._from_string
    functionSourceFile: git.util
    functionUses: 14
    functionsReached:
    - m.group
    - cls.name_email_regex.search
    - m.groups
    - cls.name_only_regex.search
    - git.util.Actor.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.makedirs
    functionSourceFile: os
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.init
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 8
    IfCount: 9
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aefb850>
    - <ast.Constant object at 0x7fab5aefb280>
    - <ast.Constant object at 0x7fab5aefbca0>
    - <ast.Constant object at 0x7fab5aefbac0>
    argNames:
    - cls
    - git
    - url
    - path
    - odb_default_type
    - progress
    - multi_options
    - allow_unsafe_protocols
    - allow_unsafe_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1348
    functionName: git.repo.base.Repo._clone
    functionSourceFile: git.repo.base
    functionUses: 5
    functionsReached:
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - datetime.timedelta.tree.rstrip
    - <builtin>.list
    - typing.cast.object.head.commit.encode
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.IO.tree.wait
    - git.cmd.Popen.tree._terminate
    - option.startswith
    - typing.cast.object.tree.poll
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.resolve
    - typing.cast.object.poll
    - git.cmd.Popen.stdout.close
    - typing.cast.tree.object.stderr.read
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.types.assert_never
    - <builtin>.isinstance
    - process.communicate
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.head.commit.stderr.close
    - typing.cast.object.tree.encode
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - typing.IO.wait
    - <builtin>.callable
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - configparser.RawConfigParser.__init__
    - git.cmd.Popen.tree.stderr.close
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.stderr.close
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - git.util.remove_password_if_present
    - typing.cast.object.stderr.read
    - git.db.GitCmdObjectDB.__init__
    - git.cmd.Popen.tree.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.cast.object.resolve
    - typing.cast.head.commit.tree.stdin.close
    - os.path.isdir
    - url.replace
    - typing.IO.tree.encode
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.stderr.close
    - typing.cast.tree.object._terminate
    - repo.git.update_environment
    - <builtin>.float
    - git.config.GitConfigParser.__init__
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - os.path.islink
    - git.util.RemoteProgress.__init__
    - git.util.LockFile.__init__
    - typing.cast.object.head.commit.wait
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.tree.resolve
    - typing.IO.tree.stdin.close
    - datetime.timedelta.tree.resolve
    - typing.IO.rstrip
    - progs.append
    - subprocess.Popen.poll
    - git.cmd.Popen.tree.stdin.close
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - git.util.expand_path
    - option.lstrip
    - typing.cast.object.tree.resolve
    - urllib.parse.urlsplit._replace
    - subprocess.Popen.terminate
    - os.getcwd
    - typing.cast.tree.head.commit.wait
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.object.encode
    - git.util.LockFile._obtain_lock_or_raise
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - <builtin>.enumerate
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Git.polish_url
    - typing.cast.poll
    - typing.cast.tree._terminate
    - typing.cast.tree.object.head.commit.stdin.close
    - warnings.warn
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.util.RemoteProgress.new_message_handler.handler
    - git.cmd.Popen.resolve
    - git.cmd.Popen.terminate
    - git.cmd.Git.environment
    - _is_cygwin_cache.get
    - typing.cast.terminate
    - typing.cast.tree.object.head.commit.poll
    - stat.S_ISREG
    - typing.cast.object.head.commit.tree.encode
    - git.cmd.Popen._terminate
    - urllib.parse.urlsplit
    - cmdline.split
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - subprocess.Popen.tree.terminate
    - datetime.timedelta._terminate
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - line.strip
    - typing.cast.head.commit.encode
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.resolve
    - typing.cast.tree.object.head.commit.stderr.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.object.encode
    - message.endswith
    - os.readlink
    - fp.read
    - content.startswith
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - typing.cast.tree.object.stdout.close
    - datetime.timedelta.stderr.close
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.resolve
    - t.join
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - datetime.timedelta.tree.stderr.close
    - os.path.abspath
    - datetime.timedelta.rstrip
    - typing.cast.tree.head.commit.poll
    - <builtin>.zip
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.stderr.read
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - kwargs.pop
    - datetime.timedelta.tree._terminate
    - folder.strip
    - urllib.parse.urlunsplit
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.resolve
    - subprocess.Popen.rstrip
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Popen.tree.wait
    - git.util.CallableRemoteProgress.update
    - git.cmd.Popen.tree.resolve
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.BinaryIO.tree.rstrip
    - typing.cast.tree.object.terminate
    - git.cmd.handle_process_output
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    - typing.IO.tree._terminate
    - subprocess.Popen.tree.stdin.close
    - typing.cast.tree.stdin.close
    - typing.IO.tree.stderr.close
    - line.decode
    - git.cmd.Popen.stdin.close
    - subprocess.Popen
    - datetime.timedelta.encode
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - git.repo.base.Repo._get_config_path
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - git.repo.base.Repo.config_reader
    - subprocess.Popen.tree.rstrip
    - os.path.split
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.object.stderr.close
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.tree.encode
    - pathlib.Path.read_text
    - typing.BinaryIO.terminate
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - datetime.timedelta.stdout.close
    - typing.cast.object.head.commit.poll
    - typing.cast.clone
    - typing.cast.tree.terminate
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.util.LockFile._has_lock
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - os.path.dirname
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.tree.poll
    - kwargs.get
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.head.commit._terminate
    - datetime.timedelta.tree.poll
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - typing.cast.object.head.commit.stderr.close
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - git.cmd.Git.check_unsafe_options
    - typing.cast.head.commit.terminate
    - typing.IO.tree.stdout.close
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.cast.tree.object.resolve
    - shlex.split
    - kwargs.keys
    - regex.match
    - typing.BinaryIO.encode
    - fpath.upper
    - <builtin>.str
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - typing.cast.head.commit.tree.stderr.close
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.tree.head.commit._terminate
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.tree._terminate
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.head.commit.rstrip
    - typing.IO._terminate
    - typing.cast.stderr.close
    - typing.cast.object.head.commit.resolve
    - <builtin>.open
    - subprocess.Popen._terminate
    - typing.cast.tree.stderr.read
    - os.environ.get
    - datetime.timedelta.tree.stdout.close
    - git.cmd.Popen.tree.poll
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - path.startswith
    - typing.cast.head.commit.tree.encode
    - typing.cast.object.tree.stdout.close
    - typing.IO.stdin.close
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - typing.cast.object.head.commit.terminate
    - typing.IO.tree.rstrip
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - configparser.RawConfigParser.getboolean
    - typing.cast.environment
    - <builtin>.super
    - subprocess.Popen.stderr.close
    - typing.IO.tree.stderr.read
    - typing.cast.tree.head.commit.stdin.close
    - t.start
    - url.startswith
    - typing.IO.tree.resolve
    - git.cmd.Popen.rstrip
    - datetime.timedelta.poll
    - <builtin>.ValueError
    - typing.cast.object.tree._terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - os.path.expandvars
    - typing.cast.head.commit.tree.poll
    - os.path.exists
    - typing.cast.head.commit.stdout.close
    - git.util.py_where
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - typing.cast.tree.object.rstrip
    - typing.BinaryIO.tree.terminate
    - typing.cast
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - typing.cast.stdin.close
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.object.tree.terminate
    - typing.BinaryIO.wait
    - typing.cast.object.rstrip
    - typing.BinaryIO.tree.stderr.close
    - new_cmdline.append
    - os.path.expanduser
    - os.getenv
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - os.stat
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - datetime.timedelta.tree.terminate
    - typing.cast.head.commit.tree.wait
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - match.group
    - subprocess.Popen.wait
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.pop
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b451f70>
    argNames:
    - cls
    - url
    - is_cygwin
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 675
    functionName: git.cmd.Git.polish_url
    functionSourceFile: git.cmd
    functionUses: 9
    functionsReached:
    - os.path.dirname
    - os.path.expanduser
    - git.util._get_exe_extensions
    - regex.match
    - os.environ.get
    - fpath.upper
    - <builtin>.str
    - url.startswith
    - folder.strip
    - subprocess.Popen
    - os.access
    - url.replace
    - progs.append
    - PATHEXT.split
    - path.startswith
    - p.upper
    - os.path.expandvars
    - os.path.isfile
    - <builtin>.tuple
    - git.util._is_cygwin_git
    - os.path.join
    - git.util.py_where.is_exec
    - git.util.cygpath
    - git.util.py_where
    - match.groups
    - git.cmd.Git.is_cygwin
    - _is_cygwin_cache.get
    - process.communicate
    - git.util.is_cygwin_git
    - _logger.debug
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.get
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: shlex.split
    functionSourceFile: shlex
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 695
    functionName: git.cmd.Git.check_unsafe_protocols
    functionSourceFile: git.cmd
    functionUses: 15
    functionsReached:
    - match.group
    - cls.re_unsafe_protocol.match
    linkageType: pythonLinkage
    raised:
    - UnsafeProtocolError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.keys
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - options
    - unsafe_options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 715
    functionName: git.cmd.Git.check_unsafe_options
    functionSourceFile: git.cmd
    functionUses: 9
    functionsReached:
    - <builtin>.zip
    - option.startswith
    - option.lstrip
    linkageType: pythonLinkage
    raised:
    - UnsafeOptionError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - kwargs
    - git
    - progress
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: git.remote.add_progress
    functionSourceFile: ''
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.clone
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - progress
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 101
    functionName: git.remote.to_progress_instance
    functionSourceFile: git.remote
    functionUses: 11
    functionsReached:
    - git.util.CallableRemoteProgress.__init__
    - <builtin>.callable
    - git.util.RemoteProgress.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 690
    functionName: git.util.RemoteProgress.new_message_handler
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 9
    IfCount: 9
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b5214c0>
    - <ast.Constant object at 0x7fab5b5210d0>
    - <ast.Constant object at 0x7fab5b521130>
    argNames:
    - process
    - stdout_handler
    - stderr_handler
    - finalizer
    - decode_streams
    - kill_after_timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 97
    functionName: git.cmd.handle_process_output
    functionSourceFile: git.cmd
    functionUses: 15
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - datetime.timedelta.tree.rstrip
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen._terminate
    - typing.cast.tree.stdin.close
    - typing.cast.object.head.commit.encode
    - typing.cast.stderr.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.object.tree.poll
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.object.head.commit.tree.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.communicate
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isabs
    functionSourceFile: os
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1399
    functionName: git.cmd.Git.environment
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.environment
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.git.update_environment
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: writer.set_value
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b479a60>
    - <ast.Constant object at 0x7fab5b479d60>
    - <ast.Constant object at 0x7fab5b479f10>
    - <ast.Constant object at 0x7fab5b479ee0>
    argNames:
    - self
    - path
    - progress
    - multi_options
    - allow_unsafe_protocols
    - allow_unsafe_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1434
    functionName: git.repo.base.Repo.clone
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - datetime.timedelta.tree.rstrip
    - <builtin>.list
    - typing.cast.object.head.commit.encode
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.IO.tree.wait
    - git.cmd.Popen.tree._terminate
    - option.startswith
    - typing.cast.object.tree.poll
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.resolve
    - typing.cast.object.poll
    - git.cmd.Popen.stdout.close
    - typing.cast.tree.object.stderr.read
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.types.assert_never
    - <builtin>.isinstance
    - process.communicate
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.head.commit.stderr.close
    - typing.cast.object.tree.encode
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - typing.IO.wait
    - <builtin>.callable
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - configparser.RawConfigParser.__init__
    - git.cmd.Popen.tree.stderr.close
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.stderr.close
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - git.util.remove_password_if_present
    - typing.cast.object.stderr.read
    - git.db.GitCmdObjectDB.__init__
    - git.cmd.Popen.tree.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.cast.object.resolve
    - typing.cast.head.commit.tree.stdin.close
    - os.path.isdir
    - url.replace
    - typing.IO.tree.encode
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.stderr.close
    - typing.cast.tree.object._terminate
    - repo.git.update_environment
    - <builtin>.float
    - git.config.GitConfigParser.__init__
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - os.path.islink
    - <builtin>.type
    - git.util.RemoteProgress.__init__
    - git.util.LockFile.__init__
    - typing.cast.object.head.commit.wait
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.tree.resolve
    - typing.IO.tree.stdin.close
    - datetime.timedelta.tree.resolve
    - typing.IO.rstrip
    - progs.append
    - subprocess.Popen.poll
    - git.cmd.Popen.tree.stdin.close
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - git.util.expand_path
    - option.lstrip
    - typing.cast.object.tree.resolve
    - urllib.parse.urlsplit._replace
    - subprocess.Popen.terminate
    - os.getcwd
    - typing.cast.tree.head.commit.wait
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.object.encode
    - git.util.LockFile._obtain_lock_or_raise
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - <builtin>.enumerate
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Git.polish_url
    - typing.cast.poll
    - typing.cast.tree._terminate
    - typing.cast.tree.object.head.commit.stdin.close
    - warnings.warn
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.util.RemoteProgress.new_message_handler.handler
    - git.cmd.Popen.resolve
    - git.cmd.Popen.terminate
    - git.cmd.Git.environment
    - _is_cygwin_cache.get
    - typing.cast.terminate
    - typing.cast.tree.object.head.commit.poll
    - stat.S_ISREG
    - typing.cast.object.head.commit.tree.encode
    - git.cmd.Popen._terminate
    - urllib.parse.urlsplit
    - cmdline.split
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - subprocess.Popen.tree.terminate
    - datetime.timedelta._terminate
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - line.strip
    - typing.cast.head.commit.encode
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.resolve
    - typing.cast.tree.object.head.commit.stderr.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.object.encode
    - message.endswith
    - os.readlink
    - fp.read
    - content.startswith
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - typing.cast.tree.object.stdout.close
    - datetime.timedelta.stderr.close
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.resolve
    - t.join
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - datetime.timedelta.tree.stderr.close
    - os.path.abspath
    - datetime.timedelta.rstrip
    - typing.cast.tree.head.commit.poll
    - <builtin>.zip
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.stderr.read
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - kwargs.pop
    - datetime.timedelta.tree._terminate
    - folder.strip
    - urllib.parse.urlunsplit
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.resolve
    - subprocess.Popen.rstrip
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Popen.tree.wait
    - git.util.CallableRemoteProgress.update
    - git.cmd.Popen.tree.resolve
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.BinaryIO.tree.rstrip
    - typing.cast.tree.object.terminate
    - git.cmd.handle_process_output
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    - typing.IO.tree._terminate
    - subprocess.Popen.tree.stdin.close
    - typing.cast.tree.stdin.close
    - typing.IO.tree.stderr.close
    - line.decode
    - git.cmd.Popen.stdin.close
    - subprocess.Popen
    - datetime.timedelta.encode
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - git.repo.base.Repo._get_config_path
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - git.repo.base.Repo.config_reader
    - subprocess.Popen.tree.rstrip
    - os.path.split
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.object.stderr.close
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.tree.encode
    - pathlib.Path.read_text
    - typing.BinaryIO.terminate
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - datetime.timedelta.stdout.close
    - typing.cast.object.head.commit.poll
    - typing.cast.clone
    - typing.cast.tree.terminate
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.util.LockFile._has_lock
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - os.path.dirname
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.tree.poll
    - kwargs.get
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.head.commit._terminate
    - datetime.timedelta.tree.poll
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - typing.cast.object.head.commit.stderr.close
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - git.cmd.Git.check_unsafe_options
    - typing.cast.head.commit.terminate
    - typing.IO.tree.stdout.close
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.cast.tree.object.resolve
    - shlex.split
    - kwargs.keys
    - regex.match
    - typing.BinaryIO.encode
    - fpath.upper
    - <builtin>.str
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - typing.cast.head.commit.tree.stderr.close
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.tree.head.commit._terminate
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.tree._terminate
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.head.commit.rstrip
    - typing.IO._terminate
    - typing.cast.stderr.close
    - typing.cast.object.head.commit.resolve
    - <builtin>.open
    - subprocess.Popen._terminate
    - typing.cast.tree.stderr.read
    - os.environ.get
    - datetime.timedelta.tree.stdout.close
    - git.cmd.Popen.tree.poll
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - path.startswith
    - typing.cast.head.commit.tree.encode
    - typing.cast.object.tree.stdout.close
    - typing.IO.stdin.close
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - typing.cast.object.head.commit.terminate
    - typing.IO.tree.rstrip
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - configparser.RawConfigParser.getboolean
    - typing.cast.environment
    - <builtin>.super
    - subprocess.Popen.stderr.close
    - typing.IO.tree.stderr.read
    - typing.cast.tree.head.commit.stdin.close
    - t.start
    - url.startswith
    - typing.IO.tree.resolve
    - git.cmd.Popen.rstrip
    - datetime.timedelta.poll
    - <builtin>.ValueError
    - typing.cast.object.tree._terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - os.path.expandvars
    - typing.cast.head.commit.tree.poll
    - os.path.exists
    - typing.cast.head.commit.stdout.close
    - git.util.py_where
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - typing.cast.tree.object.rstrip
    - typing.BinaryIO.tree.terminate
    - typing.cast
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - typing.cast.stdin.close
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.object.tree.terminate
    - typing.BinaryIO.wait
    - typing.cast.object.rstrip
    - typing.BinaryIO.tree.stderr.close
    - new_cmdline.append
    - os.path.expanduser
    - os.getenv
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - os.stat
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - datetime.timedelta.tree.terminate
    - typing.cast.head.commit.tree.wait
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.repo.base.Repo._clone
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - match.group
    - subprocess.Popen.wait
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b4405e0>
    - <ast.Constant object at 0x7fab5b440c10>
    - <ast.Constant object at 0x7fab5b440850>
    - <ast.Constant object at 0x7fab5b440f70>
    - <ast.Constant object at 0x7fab5b4404f0>
    argNames:
    - cls
    - url
    - to_path
    - progress
    - env
    - multi_options
    - allow_unsafe_protocols
    - allow_unsafe_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1493
    functionName: git.repo.base.Repo.clone_from
    functionSourceFile: git.repo.base
    functionUses: 3
    functionsReached:
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - datetime.timedelta.tree.rstrip
    - <builtin>.list
    - typing.cast.object.head.commit.encode
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.IO.tree.wait
    - git.cmd.Popen.tree._terminate
    - option.startswith
    - typing.cast.object.tree.poll
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.resolve
    - typing.cast.object.poll
    - git.cmd.Popen.stdout.close
    - typing.cast.tree.object.stderr.read
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.types.assert_never
    - <builtin>.isinstance
    - process.communicate
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.head.commit.stderr.close
    - typing.cast.object.tree.encode
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - <builtin>.callable
    - typing.IO.wait
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - configparser.RawConfigParser.__init__
    - git.cmd.Popen.tree.stderr.close
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.stderr.close
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - git.util.remove_password_if_present
    - typing.cast.object.stderr.read
    - git.db.GitCmdObjectDB.__init__
    - git.cmd.Popen.tree.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.cast.object.resolve
    - typing.cast.head.commit.tree.stdin.close
    - os.path.isdir
    - url.replace
    - typing.IO.tree.encode
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.stderr.close
    - typing.cast.tree.object._terminate
    - repo.git.update_environment
    - <builtin>.float
    - git.config.GitConfigParser.__init__
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - os.path.islink
    - git.util.RemoteProgress.__init__
    - git.util.LockFile.__init__
    - typing.cast.object.head.commit.wait
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.tree.resolve
    - typing.IO.tree.stdin.close
    - datetime.timedelta.tree.resolve
    - typing.IO.rstrip
    - progs.append
    - subprocess.Popen.poll
    - git.cmd.Popen.tree.stdin.close
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - git.util.expand_path
    - option.lstrip
    - typing.cast.object.tree.resolve
    - urllib.parse.urlsplit._replace
    - subprocess.Popen.terminate
    - os.getcwd
    - typing.cast.tree.head.commit.wait
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.object.encode
    - git.util.LockFile._obtain_lock_or_raise
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - <builtin>.enumerate
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Git.polish_url
    - typing.cast.poll
    - typing.cast.tree._terminate
    - typing.cast.tree.object.head.commit.stdin.close
    - warnings.warn
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.util.RemoteProgress.new_message_handler.handler
    - git.cmd.Popen.resolve
    - git.cmd.Popen.terminate
    - git.cmd.Git.environment
    - _is_cygwin_cache.get
    - typing.cast.terminate
    - typing.cast.tree.object.head.commit.poll
    - stat.S_ISREG
    - typing.cast.object.head.commit.tree.encode
    - git.cmd.Popen._terminate
    - urllib.parse.urlsplit
    - cmdline.split
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - subprocess.Popen.tree.terminate
    - datetime.timedelta._terminate
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - line.strip
    - typing.cast.head.commit.encode
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.resolve
    - typing.cast.tree.object.head.commit.stderr.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.object.encode
    - message.endswith
    - os.readlink
    - fp.read
    - content.startswith
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - typing.cast.tree.object.stdout.close
    - datetime.timedelta.stderr.close
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.resolve
    - t.join
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - datetime.timedelta.tree.stderr.close
    - os.path.abspath
    - datetime.timedelta.rstrip
    - typing.cast.tree.head.commit.poll
    - <builtin>.zip
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.stderr.read
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - kwargs.pop
    - datetime.timedelta.tree._terminate
    - folder.strip
    - urllib.parse.urlunsplit
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.resolve
    - subprocess.Popen.rstrip
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Popen.tree.wait
    - git.util.CallableRemoteProgress.update
    - git.cmd.Popen.tree.resolve
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.BinaryIO.tree.rstrip
    - typing.cast.tree.object.terminate
    - git.cmd.handle_process_output
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    - typing.IO.tree._terminate
    - subprocess.Popen.tree.stdin.close
    - typing.cast.tree.stdin.close
    - typing.IO.tree.stderr.close
    - line.decode
    - git.cmd.Popen.stdin.close
    - subprocess.Popen
    - datetime.timedelta.encode
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - git.repo.base.Repo._get_config_path
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - git.repo.base.Repo.config_reader
    - subprocess.Popen.tree.rstrip
    - os.path.split
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.object.stderr.close
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.tree.encode
    - pathlib.Path.read_text
    - typing.BinaryIO.terminate
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - datetime.timedelta.stdout.close
    - typing.cast.object.head.commit.poll
    - typing.cast.clone
    - typing.cast.tree.terminate
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.util.LockFile._has_lock
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - os.path.dirname
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.tree.poll
    - kwargs.get
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.head.commit._terminate
    - datetime.timedelta.tree.poll
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - typing.cast.object.head.commit.stderr.close
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - git.cmd.Git.check_unsafe_options
    - typing.cast.head.commit.terminate
    - typing.IO.tree.stdout.close
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.cast.tree.object.resolve
    - shlex.split
    - kwargs.keys
    - regex.match
    - typing.BinaryIO.encode
    - fpath.upper
    - <builtin>.str
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - typing.cast.head.commit.tree.stderr.close
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.tree.head.commit._terminate
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.resolve
    - typing.BinaryIO.tree._terminate
    - typing.cast.tree.object.head.commit.rstrip
    - typing.IO._terminate
    - typing.cast.stderr.close
    - typing.cast.object.head.commit.resolve
    - <builtin>.open
    - subprocess.Popen._terminate
    - typing.cast.tree.stderr.read
    - os.environ.get
    - datetime.timedelta.tree.stdout.close
    - git.cmd.Popen.tree.poll
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - path.startswith
    - typing.cast.head.commit.tree.encode
    - typing.cast.object.tree.stdout.close
    - kwargs.items
    - typing.IO.stdin.close
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - typing.cast.object.head.commit.terminate
    - typing.IO.tree.rstrip
    - typing.cast.head.commit.stderr.close
    - git.cmd.Git.update_environment
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - configparser.RawConfigParser.getboolean
    - typing.cast.environment
    - <builtin>.super
    - subprocess.Popen.stderr.close
    - typing.IO.tree.stderr.read
    - typing.cast.tree.head.commit.stdin.close
    - t.start
    - url.startswith
    - typing.IO.tree.resolve
    - git.cmd.Popen.rstrip
    - datetime.timedelta.poll
    - <builtin>.ValueError
    - typing.cast.object.tree._terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - os.path.expandvars
    - typing.cast.head.commit.tree.poll
    - os.path.exists
    - typing.cast.head.commit.stdout.close
    - git.util.py_where
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - typing.cast.tree.object.rstrip
    - typing.BinaryIO.tree.terminate
    - typing.cast
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - typing.cast.stdin.close
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - typing.BinaryIO.tree.stderr.close
    - new_cmdline.append
    - os.path.expanduser
    - os.getenv
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - os.stat
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - datetime.timedelta.tree.terminate
    - typing.cast.head.commit.tree.wait
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.repo.base.Repo._clone
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - match.group
    - subprocess.Popen.wait
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1402
    functionName: git.cmd.Git.update_environment
    functionSourceFile: git.cmd
    functionUses: 5
    functionsReached:
    - kwargs.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b787610>
    - <ast.Constant object at 0x7fab5b787760>
    argNames:
    - self
    - ostream
    - treeish
    - prefix
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1553
    functionName: git.repo.base.Repo.archive
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast
    - kwargs.pop
    - typing.cast.archive
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.archive
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1599
    functionName: git.repo.base.Repo.has_separate_working_tree
    functionSourceFile: git.repo.base
    functionUses: 2
    functionsReached:
    - os.path.isfile
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1619
    functionName: git.repo.base.Repo.__repr__
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1623
    functionName: git.repo.base.Repo.currently_rebasing_on
    functionSourceFile: git.repo.base
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.open
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - os.path.isfile
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - os.path.join
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - f.readline
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.readline
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.db
    functionSourceFile: git.db
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - binsha
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 39
    functionName: git.db.GitCmdObjectDB.info
    functionSourceFile: git.db
    functionUses: 0
    functionsReached:
    - datetime.timedelta.tree.stdin.flush
    - git.repo.base.Repo.__init__
    - proc.communicate
    - typing.cast.tree.head.commit.stdin.flush
    - call.append
    - git.cmd.Git.get_object_header
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.head.commit.tree.stdout.readline
    - typing.IO.repo.odb.info
    - typing.cast.object.stdin.write
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - datetime.timedelta.stdout.readline
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.BinaryIO.stdin.write
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - gitdb.base.OInfo
    - git.cmd.Git._get_persistent_cmd
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - typing.cast.object.tree.stdin.write
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.stdin.flush
    - typing.IO.stdin.write
    - typing.cast.object.resolve
    - git.cmd.Git.__get_object_header
    - destination.write
    - typing.IO.tree.odb.info
    - gitdb.util.bin_to_hex.decode
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - typing.BinaryIO.stdin.flush
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.stdout.readline
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.cmd.Popen.stdout.readline
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.tree.stdin.flush
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - header_line.split
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stdin.flush
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.BinaryIO.stdout.readline
    - progs.append
    - typing.cast.tree.head.commit.stdin.write
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.head.commit.stdin.write
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - datetime.timedelta.tree.stdin.write
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.stdin.flush
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Git._prepare_ref
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.stdin.write
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - typing.BinaryIO.tree.stdin.write
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.IO.stdout.readline
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.stdin.flush
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.get_object_header
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.tree.stdout.readline
    - subprocess.Popen.tree.stdin.write
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.tree.object.stdin.write
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.stdin.write
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - typing.cast.object.head.commit.tree.stdin.flush
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - git.cmd.Popen.stdin.write
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - gitdb.util.bin_to_hex.endswith
    - os.path.dirname
    - typing.IO.tree.stdin.write
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.stdin.flush
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.object.tree.stdout.readline
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.tree.stdin.flush
    - typing.cast.tree.object.resolve
    - typing.IO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.IO.stdin.flush
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - datetime.timedelta.stdin.flush
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - typing.cast.tree.object.head.commit.stdin.write
    - typing.cast.head.commit.tree.stdin.write
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.cast.object.head.commit.stdin.flush
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Popen.stdin.flush
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - typing.cast.head.commit.stdout.readline
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.cast.tree.stdout.readline
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - subprocess.Popen.stdin.write
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex.encode
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast
    - typing.cast.tree.object.stdin.flush
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.tree.head.commit.stdout.readline
    - datetime.timedelta.stdin.write
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.stdout.readline
    - typing.cast.head.commit.tree.stdin.flush
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - subprocess.Popen.tree.stdin.flush
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - typing.BinaryIO.tree.stdout.readline
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.bin_to_hex
    functionSourceFile: gitdb
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.get_object_header
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1666
    functionName: git.cmd.Git.get_object_header
    functionSourceFile: git.cmd
    functionUses: 2
    functionsReached:
    - datetime.timedelta.tree.stdin.flush
    - git.repo.base.Repo.__init__
    - proc.communicate
    - typing.cast.tree.head.commit.stdin.flush
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.head.commit.tree.stdout.readline
    - typing.IO.repo.odb.info
    - typing.cast.object.stdin.write
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - datetime.timedelta.stdout.readline
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.BinaryIO.stdin.write
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Git._get_persistent_cmd
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - typing.cast.object.tree.stdin.write
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.stdin.flush
    - typing.IO.stdin.write
    - typing.cast.object.resolve
    - git.cmd.Git.__get_object_header
    - destination.write
    - typing.IO.tree.odb.info
    - gitdb.util.bin_to_hex.decode
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - typing.BinaryIO.stdin.flush
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.stdout.readline
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.cmd.Popen.stdout.readline
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.tree.stdin.flush
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - header_line.split
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stdin.flush
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.BinaryIO.stdout.readline
    - progs.append
    - typing.cast.tree.head.commit.stdin.write
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.head.commit.stdin.write
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - datetime.timedelta.tree.stdin.write
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.stdin.flush
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Git._prepare_ref
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.stdin.write
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - typing.BinaryIO.tree.stdin.write
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.IO.stdout.readline
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.stdin.flush
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.tree.stdout.readline
    - subprocess.Popen.tree.stdin.write
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.tree.object.stdin.write
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.stdin.write
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - typing.cast.object.head.commit.tree.stdin.flush
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - git.cmd.Popen.stdin.write
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - gitdb.util.bin_to_hex.endswith
    - os.path.dirname
    - typing.IO.tree.stdin.write
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.stdin.flush
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.object.tree.stdout.readline
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.tree.stdin.flush
    - typing.cast.tree.object.resolve
    - typing.IO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.IO.stdin.flush
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - datetime.timedelta.stdin.flush
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - typing.cast.tree.object.head.commit.stdin.write
    - typing.cast.head.commit.tree.stdin.write
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.cast.object.head.commit.stdin.flush
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Popen.stdin.flush
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - typing.cast.head.commit.stdout.readline
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.cast.tree.stdout.readline
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - subprocess.Popen.stdin.write
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex.encode
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast
    - typing.cast.tree.object.stdin.flush
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.tree.head.commit.stdout.readline
    - datetime.timedelta.stdin.write
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.stdout.readline
    - typing.cast.head.commit.tree.stdin.flush
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - subprocess.Popen.tree.stdin.flush
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - typing.BinaryIO.tree.stdout.readline
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.base.OInfo
    functionSourceFile: gitdb
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - binsha
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 44
    functionName: git.db.GitCmdObjectDB.stream
    functionSourceFile: git.db
    functionUses: 0
    functionsReached:
    - datetime.timedelta.tree.stdin.flush
    - git.repo.base.Repo.__init__
    - proc.communicate
    - typing.cast.tree.head.commit.stdin.flush
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.head.commit.tree.stdout.readline
    - typing.IO.repo.odb.info
    - typing.cast.object.stdin.write
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - datetime.timedelta.stdout.readline
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stream.read
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.BinaryIO.stdin.write
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Git._get_persistent_cmd
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - typing.cast.object.tree.stdin.write
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.stdin.flush
    - typing.IO.stdin.write
    - typing.cast.object.resolve
    - git.cmd.Git.__get_object_header
    - destination.write
    - typing.IO.tree.odb.info
    - gitdb.util.bin_to_hex.decode
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - typing.BinaryIO.stdin.flush
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.stdout.readline
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.cmd.Popen.stdout.readline
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.tree.stdin.flush
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - header_line.split
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stdin.flush
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.object.tree.repo.odb.info
    - io.BytesIO
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.BinaryIO.stdout.readline
    - progs.append
    - typing.cast.tree.head.commit.stdin.write
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.head.commit.stdin.write
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - datetime.timedelta.tree.stdin.write
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.stdin.flush
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Git._prepare_ref
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.stdin.write
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - typing.BinaryIO.tree.stdin.write
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.stream_object_data
    - git.util.stream_copy
    - typing.IO.stdout.readline
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.stdin.flush
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.stream_object_data
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.tree.stdout.readline
    - subprocess.Popen.tree.stdin.write
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.tree.object.stdin.write
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.stdin.write
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - <builtin>.hasattr
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - typing.cast.object.head.commit.tree.stdin.flush
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - datetime.timedelta.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - gitdb.base.OStream
    - git.repo.base.Repo._get_config_path
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - git.cmd.Popen.stdin.write
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - gitdb.util.bin_to_hex.endswith
    - os.path.dirname
    - typing.IO.tree.stdin.write
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.stdin.flush
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - git.cmd.Git.CatFileContentStream.__init__
    - watchdog.cancel
    - typing.cast.object.tree.stdout.readline
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.tree.stdin.flush
    - typing.cast.tree.object.resolve
    - typing.IO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.IO.stdin.flush
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - datetime.timedelta.stdin.flush
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - typing.cast.tree.object.head.commit.stdin.write
    - typing.cast.head.commit.tree.stdin.write
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.cast.object.head.commit.stdin.flush
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Popen.stdin.flush
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - typing.cast.head.commit.stdout.readline
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.cast.tree.stdout.readline
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - subprocess.Popen.stdin.write
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex.encode
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast
    - typing.cast.tree.object.stdin.flush
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - typing.cast.tree.head.commit.stdout.readline
    - os.path.normpath
    - datetime.timedelta.stdin.write
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.stdout.readline
    - typing.cast.head.commit.tree.stdin.flush
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - subprocess.Popen.tree.stdin.flush
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - typing.BinaryIO.tree.stdout.readline
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1694
    functionName: git.cmd.Git.stream_object_data
    functionSourceFile: git.cmd
    functionUses: 2
    functionsReached:
    - datetime.timedelta.tree.stdin.flush
    - git.repo.base.Repo.__init__
    - proc.communicate
    - typing.cast.tree.head.commit.stdin.flush
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.head.commit.tree.stdout.readline
    - typing.IO.repo.odb.info
    - typing.cast.object.stdin.write
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - datetime.timedelta.stdout.readline
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - stream.read
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.BinaryIO.stdin.write
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Git._get_persistent_cmd
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - typing.cast.object.tree.stdin.write
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.stdin.flush
    - typing.IO.stdin.write
    - typing.cast.object.resolve
    - git.cmd.Git.__get_object_header
    - destination.write
    - typing.IO.tree.odb.info
    - gitdb.util.bin_to_hex.decode
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - typing.BinaryIO.stdin.flush
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.stdout.readline
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.cmd.Popen.stdout.readline
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.tree.stdin.flush
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - header_line.split
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stdin.flush
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.object.tree.repo.odb.info
    - io.BytesIO
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.BinaryIO.stdout.readline
    - progs.append
    - typing.cast.tree.head.commit.stdin.write
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.head.commit.stdin.write
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - datetime.timedelta.tree.stdin.write
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.stdin.flush
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Git._prepare_ref
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.stdin.write
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - typing.BinaryIO.tree.stdin.write
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.IO.stdout.readline
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.stdin.flush
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.tree.stdout.readline
    - subprocess.Popen.tree.stdin.write
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.tree.object.stdin.write
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.stdin.write
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - <builtin>.hasattr
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - typing.cast.object.head.commit.tree.stdin.flush
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - datetime.timedelta.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - git.cmd.Popen.stdin.write
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - gitdb.util.bin_to_hex.endswith
    - os.path.dirname
    - typing.IO.tree.stdin.write
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.stdin.flush
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - git.cmd.Git.CatFileContentStream.__init__
    - watchdog.cancel
    - typing.cast.object.tree.stdout.readline
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.tree.stdin.flush
    - typing.cast.tree.object.resolve
    - typing.IO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.IO.stdin.flush
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - datetime.timedelta.stdin.flush
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - typing.cast.tree.object.head.commit.stdin.write
    - typing.cast.head.commit.tree.stdin.write
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.cast.object.head.commit.stdin.flush
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Popen.stdin.flush
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - typing.cast.head.commit.stdout.readline
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.cast.tree.stdout.readline
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - subprocess.Popen.stdin.write
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex.encode
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast
    - typing.cast.tree.object.stdin.flush
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - typing.cast.tree.head.commit.stdout.readline
    - os.path.normpath
    - datetime.timedelta.stdin.write
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.stdout.readline
    - typing.cast.head.commit.tree.stdin.flush
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - subprocess.Popen.tree.stdin.flush
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - typing.BinaryIO.tree.stdout.readline
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stream_object_data
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.base.OStream
    functionSourceFile: gitdb
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - partial_hexsha
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 51
    functionName: git.db.GitCmdObjectDB.partial_to_complete_sha_hex
    functionSourceFile: git.db
    functionUses: 0
    functionsReached:
    - datetime.timedelta.tree.stdin.flush
    - git.repo.base.Repo.__init__
    - proc.communicate
    - typing.cast.tree.head.commit.stdin.flush
    - call.append
    - git.cmd.Git.get_object_header
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.head.commit.tree.stdout.readline
    - typing.IO.repo.odb.info
    - typing.cast.object.stdin.write
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - datetime.timedelta.stdout.readline
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.BinaryIO.stdin.write
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Git._get_persistent_cmd
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - typing.cast.object.tree.stdin.write
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.stdin.flush
    - typing.IO.stdin.write
    - typing.cast.object.resolve
    - git.cmd.Git.__get_object_header
    - destination.write
    - typing.IO.tree.odb.info
    - gitdb.util.bin_to_hex.decode
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - typing.BinaryIO.stdin.flush
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.stdout.readline
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.cmd.Popen.stdout.readline
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.tree.stdin.flush
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - header_line.split
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stdin.flush
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.BinaryIO.stdout.readline
    - progs.append
    - typing.cast.tree.head.commit.stdin.write
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.head.commit.stdin.write
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - datetime.timedelta.tree.stdin.write
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.stdin.flush
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Git._prepare_ref
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.stdin.write
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - typing.BinaryIO.tree.stdin.write
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.IO.stdout.readline
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.stdin.flush
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.get_object_header
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.tree.stdout.readline
    - subprocess.Popen.tree.stdin.write
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.tree.object.stdin.write
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.stdin.write
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - typing.cast.object.head.commit.tree.stdin.flush
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - git.cmd.Popen.stdin.write
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - gitdb.util.bin_to_hex.endswith
    - os.path.dirname
    - typing.IO.tree.stdin.write
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.stdin.flush
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.object.tree.stdout.readline
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.tree.stdin.flush
    - typing.cast.tree.object.resolve
    - typing.IO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.IO.stdin.flush
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - datetime.timedelta.stdin.flush
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - typing.cast.tree.object.head.commit.stdin.write
    - typing.cast.head.commit.tree.stdin.write
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.cast.object.head.commit.stdin.flush
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Popen.stdin.flush
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - typing.cast.head.commit.stdout.readline
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.cast.tree.stdout.readline
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - subprocess.Popen.stdin.write
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex.encode
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast
    - typing.cast.tree.object.stdin.flush
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.tree.head.commit.stdout.readline
    - datetime.timedelta.stdin.write
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.stdout.readline
    - typing.cast.head.commit.tree.stdin.flush
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - subprocess.Popen.tree.stdin.flush
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - typing.BinaryIO.tree.stdout.readline
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised:
    - BadObject
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.cmd
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - cmdline
    - name
    - stream
    - is_decode
    - handler
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 144
    functionName: git.cmd.handle_process_output.pump_stream
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.util.remove_password_if_present
    - stream.close
    - urllib.parse.urlsplit.netloc.replace
    - new_cmdline.append
    - urllib.parse.urlsplit
    - <builtin>.enumerate
    - <builtin>.isinstance
    - line.decode
    - _logger.error
    - <builtin>.str
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit._replace
    linkageType: pythonLinkage
    raised:
    - CommandError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _logger.error
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream.close
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmdline.split
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pumps.append
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Thread
    functionSourceFile: threading
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.start
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threads.append
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.join
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.is_alive
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._terminate
    functionSourceFile: git
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._terminate
    functionSourceFile: subprocess
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._terminate
    functionSourceFile: datetime
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._terminate
    functionSourceFile: git
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._terminate
    functionSourceFile: datetime
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 754
    functionName: git.cmd.Git.AutoInterrupt._terminate
    functionSourceFile: git.cmd
    functionUses: 17
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.read
    - typing.IO.stderr.close
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - typing.cast.tree.stdin.close
    - typing.cast.stderr.close
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.stderr.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.object.tree.poll
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - gitdb.utils.encoding.force_bytes
    - typing.cast.poll
    - typing.cast.head.commit.stderr.read
    - typing.cast.object.poll
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.tree.object.head.commit.stdin.close
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - typing.cast.tree.wait
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.tree.object.stderr.read
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.cast.object.head.commit.terminate
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - typing.BinaryIO.terminate
    - typing.cast.tree.object.head.commit.poll
    - typing.cast.tree.head.commit.stderr.close
    - subprocess.Popen.stderr.close
    - typing.cast.tree.head.commit.stdin.close
    - typing.IO.tree.stderr.read
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.IO.terminate
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.tree.object.stderr.close
    - typing.cast.stdout.close
    - typing.cast.tree.object.wait
    - typing.BinaryIO.poll
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.stdout.close
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - datetime.timedelta.stdin.close
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - datetime.timedelta.tree.poll
    - typing.cast.stderr.read
    - typing.BinaryIO.tree.terminate
    - typing.cast.object.head.commit.stderr.close
    - typing.cast.object.head.commit.tree.wait
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.cast.object.tree.wait
    - typing.IO.tree.stdin.close
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.object.tree.stderr.read
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - typing.IO.poll
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - typing.cast.tree.object.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.poll
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._terminate
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._terminate
    functionSourceFile: subprocess
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.encode
    functionSourceFile: datetime
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.encode
    functionSourceFile: git
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.encode
    functionSourceFile: subprocess
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.encode
    functionSourceFile: git
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.encode
    functionSourceFile: subprocess
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.encode
    functionSourceFile: datetime
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.encode
    functionSourceFile: typing
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - line
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 697
    functionName: git.util.RemoteProgress.new_message_handler.handler
    functionSourceFile: git.util
    functionUses: 16
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - typing.cast.head.commit.rstrip
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - datetime.timedelta.tree.rstrip
    - line.decode
    - typing.BinaryIO.rstrip
    - subprocess.Popen.rstrip
    - git.cmd.Popen.rstrip
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - typing.IO.rstrip
    - git.util.RemoteProgress.__init__
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.tree.head.commit.rstrip
    - subprocess.Popen.tree.rstrip
    - typing.cast.head.commit.tree.rstrip
    - <builtin>.len
    - message.endswith
    - typing.cast.object.tree.rstrip
    - datetime.timedelta.rstrip
    - typing.BinaryIO.tree.rstrip
    - git.cmd.Popen.tree.rstrip
    - match.groups
    - <builtin>.isinstance
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.rstrip
    - typing.IO.tree.rstrip
    - typing.cast.tree.rstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - command
    - shell
    - env
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 228
    functionName: git.cmd._safer_popen_windows
    functionSourceFile: git.cmd
    functionUses: 12
    functionsReached:
    - git.cmd.Popen.odb.info
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - typing.cast.object.head.commit.resolve
    - datetime.timedelta.repo.odb.info
    - <builtin>.open
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - subprocess.Popen.odb.info
    - git.repo.base.Repo.__init__
    - git.repo.fun.find_worktree_git_dir
    - typing.cast.object.repo.odb.info
    - os.environ.get
    - git.repo.fun.name_to_object
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen.repo.odb.info
    - subprocess.Popen
    - typing.BinaryIO.repo.odb.info
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - git.cmd.Git.AutoInterrupt.__init__
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - git.repo.base.Repo._get_config_path
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.tree.dereference_recursive
    - path.startswith
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - typing.cast.tree
    - typing.IO.repo.odb.info
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.resolve
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.odb.info
    - git.util.LockFile._lock_file_path
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.tree.odb.info
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - git.types.assert_never
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - typing.cast.tree.head.commit.dereference_recursive
    - <builtin>.isinstance
    - pathlib.Path.read_text
    - gitdb.util.hex_to_bin
    - _is_cygwin_cache.get
    - process.communicate
    - git.cmd.Popen.tree
    - typing.BinaryIO.dereference_recursive
    - stat.S_ISREG
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.repo.odb.info
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - datetime.timedelta.re_hexsha_shortened.match
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - typing.IO.tree.resolve
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - <builtin>.ValueError
    - line.strip
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - git.refs.tag.TagReference.object
    - typing.cast.tree.re_hexsha_shortened.match
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - typing.cast.tree.resolve
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Popen.tree.repo.odb.info
    - typing.IO.re_hexsha_shortened.match
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.LockFile._has_lock
    - git.cmd.Popen
    - git.util.patch_env
    - git.repo.base.Repo.tree
    - typing.IO.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.info
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - git.util.cygpath
    - fp.read
    - content.startswith
    - git.util.LockFile._obtain_lock
    - os.path.exists
    - git.util.py_where
    - git.db.GitCmdObjectDB.__init__
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.odb.info
    - typing.IO.tree.re_hexsha_shortened.match
    - typing.cast.repo.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - configparser.RawConfigParser.has_option
    - typing.cast.tree.head.commit.repo.odb.info
    - os.path.dirname
    - git.cmd.Popen.dereference_recursive
    - typing.cast.object.resolve
    - datetime.timedelta.odb.info
    - git.util._get_exe_extensions
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - git.cmd.Git.__init__
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.object
    - typing.BinaryIO.tree
    - typing.IO.tree.odb.info
    - re.search
    - Object.new_from_sha
    - typing.cast.object.head.commit.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree
    - os.access
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.tree.object.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.odb.info
    - typing.cast.resolve
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - os.path.abspath
    - typing.cast.odb.info
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - <builtin>.issubclass
    - typing.cast.tree.object.repo.odb.info
    - os.path.normpath
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - typing.cast.tree.object.resolve
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.repo.odb.info
    - typing.cast.object.head.commit.dereference_recursive
    - typing.cast.tree.head.commit
    - regex.match
    - git.repo.fun.short_to_long
    - <builtin>.dict
    - os.getenv
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - folder.strip
    - typing.cast.tree.object.head.commit.resolve
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - datetime.timedelta.tree.resolve
    - typing.cast.head.commit.odb.info
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - os.stat
    - progs.append
    - subprocess.Popen.tree
    - datetime.timedelta.tree.odb.info
    - git.objects.tree.Tree.__init__
    - git.cmd.Popen.tree.resolve
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - typing.cast.head.commit.dereference_recursive
    - pathlib.Path
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - git.util.expand_path
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.object.head.commit
    - subprocess.Popen.tree.repo.odb.info
    - rev.startswith
    - typing.cast.object.tree.resolve
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - os.getcwd
    - typing.cast.head.commit.resolve
    - typing.IO
    - git.util.py_where.is_exec
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - match.groups
    - typing.cast.head.commit.tree
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - os.path.isabs
    - git.util.is_cygwin_git
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.fun.is_git_dir
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dict
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 199
    functionName: git.util.patch_env
    functionSourceFile: git.util
    functionUses: 13
    functionsReached:
    - os.getenv
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen
    functionSourceFile: subprocess
    functionUses: 47
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree
    functionSourceFile: datetime
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree
    functionSourceFile: subprocess
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 84
    functionName: git.refs.tag.TagReference.object
    functionSourceFile: git.refs.tag
    functionUses: 14
    functionsReached:
    - git.cmd.Popen.odb.info
    - git.cmd.Popen.dereference_recursive
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.tree.repo.odb.info
    - <builtin>.super
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - datetime.timedelta.odb.info
    - typing.cast.object.tree.repo.odb.info
    - typing.cast.object.head.commit.dereference_recursive
    - subprocess.Popen.odb.info
    - typing.cast.object.head.commit.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - typing.IO.odb.info
    - typing.cast.head.commit.repo.odb.info
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.repo.odb.info
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - git.cmd.Popen.repo.odb.info
    - typing.cast.dereference_recursive
    - git.objects.base.IndexObject.__init__
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.head.commit.odb.info
    - typing.cast.tree.object.odb.info
    - typing.IO.dereference_recursive
    - datetime.timedelta.tree.dereference_recursive
    - typing.IO.tree.repo.odb.info
    - datetime.timedelta.tree.odb.info
    - typing.cast.tree.dereference_recursive
    - git.objects.tree.Tree.__init__
    - typing.cast.object.tree.odb.info
    - typing.cast.object.odb.info
    - typing.IO.repo.odb.info
    - typing.BinaryIO.tree.repo.odb.info
    - git.cmd.Popen.tree.odb.info
    - typing.cast.object.dereference_recursive
    - git.refs.symbolic.SymbolicReference._get_object
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - typing.cast.object.head.commit.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.repo.odb.info
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.repo.odb.info
    - typing.BinaryIO.tree.odb.info
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - datetime.timedelta.tree.repo.odb.info
    - subprocess.Popen.tree.odb.info
    - typing.cast.head.commit.tree.odb.info
    - subprocess.Popen.tree.dereference_recursive
    - typing.IO.tree.dereference_recursive
    - subprocess.Popen.dereference_recursive
    - typing.cast.odb.info
    - typing.cast.tree.object.head.commit.odb.info
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.info
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - typing.cast.tree.object.repo.odb.info
    - gitdb.util.hex_to_bin
    - typing.cast.object.head.commit.odb.info
    - <builtin>.type
    - typing.BinaryIO.dereference_recursive
    - git.objects.tag.TagObject.__init__
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta
    functionSourceFile: datetime
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen
    functionSourceFile: git
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - proc
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 749
    functionName: git.cmd.Git.AutoInterrupt.__init__
    functionSourceFile: ''
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree
    functionSourceFile: git
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree
    functionSourceFile: typing
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 294
    functionName: git.cmd.dashify
    functionSourceFile: git.cmd
    functionUses: 14
    functionsReached:
    - string.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.replace
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Tuple object at 0x7fab5aca45b0>
    argNames:
    - self
    - exclude
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 298
    functionName: git.cmd.slots_to_dict
    functionSourceFile: git.cmd
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Tuple object at 0x7fab5b2f86a0>
    argNames:
    - self
    - d
    - excluded
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 302
    functionName: git.cmd.dict_to_slots_and__excluded_are_none
    functionSourceFile: git.cmd
    functionUses: 1
    functionsReached:
    - <builtin>.setattr
    - d.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: d.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.setattr
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - extra_danger
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 324
    functionName: git.cmd._warn_use_shell
    functionSourceFile: git.cmd
    functionUses: 3
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 338
    functionName: git.cmd._GitMeta.__getattribute
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.super
    - git.cmd._warn_use_shell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 343
    functionName: git.cmd._GitMeta.__setattr
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.super
    - git.cmd._warn_use_shell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.cmd.Git
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.object
    - contextlib.contextmanager
    - os.environ.get
    - typing.overload
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 419
    functionName: git.cmd.Git.__getstate__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.cmd.slots_to_dict
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - d
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 422
    functionName: git.cmd.Git.__setstate__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - d.items
    - git.cmd.dict_to_slots_and__excluded_are_none
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.object
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: textwrap.dedent
    functionSourceFile: textwrap
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _logger.critical
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - git_executable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 486
    functionName: git.util.is_cygwin_git
    functionSourceFile: git.util
    functionUses: 29
    functionsReached:
    - os.path.dirname
    - git.util._get_exe_extensions
    - os.environ.get
    - fpath.upper
    - folder.strip
    - <builtin>.str
    - subprocess.Popen
    - os.access
    - progs.append
    - PATHEXT.split
    - p.upper
    - os.path.isfile
    - <builtin>.tuple
    - git.util._is_cygwin_git
    - os.path.join
    - git.util.py_where.is_exec
    - git.util.py_where
    - _is_cygwin_cache.get
    - process.communicate
    - _logger.debug
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.overload
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.expandvars
    functionSourceFile: os
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: url.startswith
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: url.replace
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.re_unsafe_protocol.match
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.group
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: option.lstrip
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.zip
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: option.startswith
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stdin.close
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stdin.close
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stdin.close
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stdin.close
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stdin.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stdin.close
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stdin.close
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stdout.close
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stdout.close
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stdout.close
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stdout.close
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stdout.close
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stdout.close
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stdout.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stderr.close
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stderr.close
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stderr.close
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stderr.close
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stderr.close
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stderr.close
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stderr.close
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.poll
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.poll
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.poll
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.poll
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.poll
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.poll
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.poll
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _logger.info
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.terminate
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.terminate
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.terminate
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.terminate
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.terminate
    functionSourceFile: subprocess
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.terminate
    functionSourceFile: git
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.terminate
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bead970>
    argNames:
    - self
    - stderr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 796
    functionName: git.cmd.Git.AutoInterrupt.wait
    functionSourceFile: git.cmd
    functionUses: 37
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.BinaryIO.tree.wait
    - typing.cast.object.tree.wait
    - gitdb.utils.encoding.force_bytes
    - typing.IO.wait
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.BinaryIO.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.tree.wait
    - typing.cast.tree.wait
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.tree.object.stderr.read
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.tree.stderr.read
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.tree.object.wait
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.wait
    - typing.BinaryIO.wait
    - git.cmd.Popen.stderr.read
    - _logger.debug
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised:
    - GitCommandError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.wait
    functionSourceFile: git
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.wait
    functionSourceFile: datetime
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.wait
    functionSourceFile: git
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.wait
    functionSourceFile: datetime
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.wait
    functionSourceFile: subprocess
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.wait
    functionSourceFile: subprocess
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.wait
    functionSourceFile: typing
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 789
    functionName: git.cmd.Git.AutoInterrupt.__del__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.read
    - typing.IO.stderr.close
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - typing.cast.tree.stdin.close
    - typing.cast.stderr.close
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.stderr.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.object.tree.poll
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - gitdb.utils.encoding.force_bytes
    - typing.cast.poll
    - typing.cast.head.commit.stderr.read
    - typing.cast.object.poll
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.tree.object.head.commit.stdin.close
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - typing.cast.tree.wait
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.tree.object.stderr.read
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.cast.object.head.commit.terminate
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - typing.BinaryIO.terminate
    - typing.cast.tree.object.head.commit.poll
    - typing.cast.tree.head.commit.stderr.close
    - subprocess.Popen.stderr.close
    - typing.cast.tree.head.commit.stdin.close
    - typing.IO.tree.stderr.read
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.IO.terminate
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - subprocess.Popen.tree.stdout.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.tree.object.stderr.close
    - typing.cast.stdout.close
    - typing.cast.tree.object.wait
    - typing.BinaryIO.poll
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.stdout.close
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - datetime.timedelta.stdin.close
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - datetime.timedelta.tree.poll
    - typing.cast.stderr.read
    - typing.BinaryIO.tree.terminate
    - typing.cast.object.head.commit.stderr.close
    - typing.cast.object.head.commit.tree.wait
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.cast.object.tree.wait
    - typing.IO.tree.stdin.close
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.object.tree.stderr.read
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - typing.IO.poll
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - typing.cast.tree.object.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.poll
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 792
    functionName: git.cmd.Git.AutoInterrupt.__getattr__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.utils.encoding.force_bytes
    functionSourceFile: gitdb
    functionUses: 47
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - stream
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 820
    functionName: git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    functionSourceFile: git.cmd
    functionUses: 38
    functionsReached:
    - typing.IO.stderr.read
    - typing.IO.tree.stderr.read
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.cast.tree.stderr.read
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.tree.stderr.read
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - git.cmd.Popen.stderr.read
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - typing.BinaryIO.stderr.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stderr.read
    functionSourceFile: datetime
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stderr.read
    functionSourceFile: subprocess
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stderr.read
    functionSourceFile: datetime
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stderr.read
    functionSourceFile: git
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stderr.read
    functionSourceFile: git
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stderr.read
    functionSourceFile: subprocess
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stderr.read
    functionSourceFile: typing
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - size
    - stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 852
    functionName: git.cmd.Git.CatFileContentStream.__init__
    functionSourceFile: git.cmd
    functionUses: 3
    functionsReached:
    - stream.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream.read
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.UnaryOp object at 0x7fab5b4f0a30>
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 863
    functionName: git.cmd.Git.CatFileContentStream.read
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.UnaryOp object at 0x7fab5b4f0250>
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 884
    functionName: git.cmd.Git.CatFileContentStream.readline
    functionSourceFile: git.cmd
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.UnaryOp object at 0x7fab5b5249d0>
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 906
    functionName: git.cmd.Git.CatFileContentStream.readlines
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - out.append
    - git.cmd.Git.CatFileContentStream.readline
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out.append
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 927
    functionName: git.cmd.Git.CatFileContentStream.__iter__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 930
    functionName: git.cmd.Git.CatFileContentStream.__next__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.min
    - git.cmd.Git.CatFileContentStream.readline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 939
    functionName: git.cmd.Git.CatFileContentStream.__del__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 972
    functionName: git.cmd.Git.__getattribute__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.super
    - git.cmd._warn_use_shell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 977
    functionName: git.cmd.Git.__getattr__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - name.startswith
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: -1
    functionName: git.cmd.Git.__getattr__.<lambda1>
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.repo.base.Repo.__init__
    - proc.communicate
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.IO.repo.odb.info
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.resolve
    - destination.write
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - progs.append
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - typing.cast.object
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.cygpath
    - git.util.LockFile._obtain_lock
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - os.path.dirname
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.tree.object.resolve
    - watchdog.start
    - regex.match
    - git.repo.fun.short_to_long
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - typing.cast
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1522
    functionName: git.cmd.Git._call_process
    functionSourceFile: git.cmd
    functionUses: 9
    functionsReached:
    - git.repo.base.Repo.__init__
    - proc.communicate
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.IO.repo.odb.info
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.resolve
    - destination.write
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - progs.append
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - typing.cast.object
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.cygpath
    - git.util.LockFile._obtain_lock
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - os.path.dirname
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.tree.object.resolve
    - watchdog.start
    - regex.match
    - git.repo.fun.short_to_long
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.tree.head.ref.log_entry
    - proc.wait
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - typing.cast
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 988
    functionName: git.cmd.Git.set_persistent_git_options
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.cmd.Git.transform_kwargs
    - git.cmd.dashify
    - kwargs.items
    - <builtin>.isinstance
    - git.cmd.Git.transform_kwarg
    - string.replace
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5af7bdc0>
    argNames:
    - self
    - split_single_char_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1465
    functionName: git.cmd.Git.transform_kwargs
    functionSourceFile: git.cmd
    functionUses: 12
    functionsReached:
    - git.cmd.dashify
    - kwargs.items
    - <builtin>.isinstance
    - git.cmd.Git.transform_kwarg
    - string.replace
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1001
    functionName: git.cmd.Git.working_dir
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1006
    functionName: git.cmd.Git.version_info
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.repo.base.Repo.__init__
    - proc.communicate
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.IO.repo.odb.info
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.resolve
    - destination.write
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - progs.append
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - <builtin>.map
    - typing.cast.object.tree.resolve
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - typing.cast.object
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.object.head.commit.dereference_recursive
    - itertools.takewhile
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - process_version.split
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - os.path.dirname
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.tree.object.resolve
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - fpath.upper
    - typing.cast.head.commit.re_hexsha_shortened.match
    - <builtin>.dict
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - typing.cast
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - version_string.split
    - os.getenv
    - opts_kwargs.pop
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: process_version.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: version_string.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.takewhile
    functionSourceFile: itertools
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.map
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.tuple
    functionSourceFile: <builtin>
    functionUses: 57
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 18
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 26
    ICount: 11
    IfCount: 18
    argCount: 16
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b716a00>
    - <ast.Constant object at 0x7fab5b716730>
    - <ast.Constant object at 0x7fab5b716d60>
    - <ast.Constant object at 0x7fab5b716280>
    - <ast.Constant object at 0x7fab5b716d00>
    - <ast.Constant object at 0x7fab5b716b50>
    - <ast.Constant object at 0x7fab5b7162b0>
    - <ast.Constant object at 0x7fab5b716970>
    - <ast.Constant object at 0x7fab5b716f40>
    - <ast.Constant object at 0x7fab5b716be0>
    - <ast.Constant object at 0x7fab5bebb550>
    - <ast.Attribute object at 0x7fab5bebb520>
    - <ast.Constant object at 0x7fab5bebbaf0>
    argNames:
    - self
    - command
    - istream
    - with_extended_output
    - with_exceptions
    - as_process
    - output_stream
    - stdout_as_string
    - kill_after_timeout
    - with_stdout
    - universal_newlines
    - shell
    - env
    - max_chunk_size
    - strip_newline_in_stdout
    - subprocess_kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1079
    functionName: git.cmd.Git.execute
    functionSourceFile: git.cmd
    functionUses: 11
    functionsReached:
    - git.cmd.Popen.odb.info
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - datetime.timedelta.repo.odb.info
    - <builtin>.enumerate
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - subprocess.Popen.odb.info
    - git.repo.base.Repo.__init__
    - git.repo.fun.find_worktree_git_dir
    - proc.communicate
    - os.environ.get
    - typing.cast.object.repo.odb.info
    - git.repo.fun.name_to_object
    - typing.cast.head.commit.repo.odb.info
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - subprocess.Popen
    - typing.BinaryIO.repo.odb.info
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - git.cmd.Git.AutoInterrupt.__init__
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - git.repo.base.Repo._get_config_path
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.tree.dereference_recursive
    - path.startswith
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - typing.cast.tree
    - typing.IO.repo.odb.info
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.resolve
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - os.environ.copy
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.odb.info
    - proc.wait
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - git.util.LockFile._lock_file_path
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - proc.stderr.read
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.tree.odb.info
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser._dict
    - stdout_value.endswith
    - typing.cast.object.tree.head.ref.log_entry
    - git.cmd.Git.execute.communicate
    - typing.BinaryIO.odb.info
    - typing.cast.tree.object.dereference_recursive
    - typing.cast.tree.head.commit.dereference_recursive
    - git.types.assert_never
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - <builtin>.isinstance
    - source.read
    - pathlib.Path.read_text
    - gitdb.util.hex_to_bin
    - _is_cygwin_cache.get
    - process.communicate
    - git.cmd.Popen.tree
    - typing.BinaryIO.dereference_recursive
    - stat.S_ISREG
    - configparser.RawConfigParser.getboolean
    - git.repo.fun.rev_parse
    - <builtin>.super
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - urllib.parse.urlsplit
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.repo.odb.info
    - proc.stderr.close
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - datetime.timedelta.re_hexsha_shortened.match
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - typing.IO.tree.resolve
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - proc.stdout.close
    - git.repo.fun.to_commit
    - <builtin>.ValueError
    - line.strip
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - git.refs.tag.TagReference.object
    - typing.cast.tree.re_hexsha_shortened.match
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Popen.tree.repo.odb.info
    - typing.IO.re_hexsha_shortened.match
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.LockFile._has_lock
    - git.util.patch_env
    - git.cmd.Popen
    - git.util.remove_password_if_present
    - typing.IO.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.info
    - git.repo.base.Repo.tree
    - typing.cast.object.head.ref.log_entry
    - git.util.cygpath
    - fp.read
    - git.cmd._safer_popen_windows
    - os.readlink
    - os.path.exists
    - git.util.LockFile._obtain_lock
    - git.db.GitCmdObjectDB.__init__
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - git.util.py_where
    - typing.cast.object.head.commit.odb.info
    - typing.IO.tree.re_hexsha_shortened.match
    - typing.cast.repo.odb.info
    - typing.cast.tree.object
    - git.util.stream_copy
    - git.objects.tag.TagObject.__init__
    - configparser.RawConfigParser.has_option
    - typing.cast.tree.head.commit.repo.odb.info
    - os.path.dirname
    - git.cmd.Popen.dereference_recursive
    - typing.cast.object.resolve
    - _logger.info
    - datetime.timedelta.odb.info
    - git.util._get_exe_extensions
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - git.cmd.Git.__init__
    - destination.write
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.object
    - typing.BinaryIO.tree
    - typing.IO.tree.odb.info
    - re.search
    - Object.new_from_sha
    - typing.cast.object.head.commit.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree
    - urllib.parse.urlsplit.netloc.replace
    - os.access
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.tree.object.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.odb.info
    - typing.cast.resolve
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - threading.Event
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - typing.cast.object.re_hexsha_shortened.match
    - <builtin>.tuple
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - os.path.abspath
    - typing.cast.odb.info
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Git.execute.as_text
    - typing.BinaryIO.re_hexsha_shortened.match
    - s.decode
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.tree.object.repo.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - typing.cast.tree.object.resolve
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - watchdog.start
    - typing.cast.object.tree.repo.odb.info
    - proc.stdout.read
    - typing.cast.object.head.commit.dereference_recursive
    - typing.cast.tree.head.commit
    - regex.match
    - git.repo.fun.short_to_long
    - os.getenv
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - urllib.parse.urlunsplit
    - folder.strip
    - typing.cast.tree.object.head.commit.resolve
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - datetime.timedelta.tree.resolve
    - typing.cast.head.commit.odb.info
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - os.stat
    - stderr_value.endswith
    - progs.append
    - subprocess.Popen.tree
    - datetime.timedelta.tree.odb.info
    - git.objects.tree.Tree.__init__
    - git.cmd.Popen.tree.resolve
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - typing.cast.head.commit.dereference_recursive
    - pathlib.Path
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - git.util.expand_path
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.object.head.commit
    - subprocess.Popen.tree.repo.odb.info
    - rev.startswith
    - typing.cast.object.tree.resolve
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - <builtin>.hasattr
    - urllib.parse.urlsplit._replace
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - os.getcwd
    - typing.cast.head.commit.resolve
    - typing.IO
    - git.util.py_where.is_exec
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - match.groups
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit.tree
    - typing.cast.head.commit
    - os.path.isabs
    - git.util.is_cygwin_git
    - typing.BinaryIO.resolve
    - threading.Timer
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.fun.is_git_dir
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - GitCommandNotFound
    - GitCommandError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.access
    functionSourceFile: os
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.copy
    functionSourceFile: os
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: env.update
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - pid
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1288
    functionName: git.cmd.Git.execute.kill_process
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.cmd.Popen.odb.info
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - typing.cast.object.head.commit.resolve
    - datetime.timedelta.repo.odb.info
    - <builtin>.open
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.IO.tree.stdout.split
    - git.repo.base.Repo.__init__
    - typing.IO.stdout.split
    - git.repo.fun.find_worktree_git_dir
    - os.environ.get
    - subprocess.Popen.odb.info
    - typing.cast.object.repo.odb.info
    - git.repo.fun.name_to_object
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen.repo.odb.info
    - subprocess.Popen
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.head.commit.stdout.split
    - kill_check.set
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - git.cmd.Git.AutoInterrupt.__init__
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - git.repo.base.Repo._get_config_path
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.tree.dereference_recursive
    - path.startswith
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - typing.cast.tree
    - typing.IO.repo.odb.info
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.resolve
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.util.LockFile._lock_file_path
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.BinaryIO.tree.odb.info
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.tree.odb.info
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.info
    - typing.BinaryIO.odb.info
    - typing.cast.object.tree.head.ref.log_entry
    - git.types.assert_never
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - typing.cast.tree.head.commit.dereference_recursive
    - <builtin>.isinstance
    - pathlib.Path.read_text
    - gitdb.util.hex_to_bin
    - _is_cygwin_cache.get
    - process.communicate
    - typing.cast.tree.stdout.split
    - git.cmd.Popen.tree
    - typing.BinaryIO.dereference_recursive
    - stat.S_ISREG
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.repo.odb.info
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - datetime.timedelta.re_hexsha_shortened.match
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - typing.IO.tree.resolve
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - datetime.timedelta.tree.stdout.split
    - git.repo.fun.to_commit
    - <builtin>.ValueError
    - os.kill
    - line.strip
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - git.refs.tag.TagReference.object
    - typing.cast.tree.re_hexsha_shortened.match
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - typing.cast.stdout.split
    - typing.cast.tree.resolve
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Popen.tree.repo.odb.info
    - typing.IO.re_hexsha_shortened.match
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.LockFile._has_lock
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - git.repo.base.Repo.tree
    - typing.IO.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.info
    - os.readlink
    - git.util.cygpath
    - git.util.LockFile._obtain_lock
    - fp.read
    - content.startswith
    - os.path.exists
    - git.util.py_where
    - git.db.GitCmdObjectDB.__init__
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.odb.info
    - typing.IO.tree.re_hexsha_shortened.match
    - typing.cast.repo.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - configparser.RawConfigParser.has_option
    - typing.cast.tree.head.commit.repo.odb.info
    - os.path.dirname
    - git.cmd.Popen.dereference_recursive
    - typing.cast.object.resolve
    - typing.BinaryIO.stdout.split
    - child_pids.append
    - datetime.timedelta.odb.info
    - git.util._get_exe_extensions
    - typing.cast.head.commit.tree.stdout.split
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - git.cmd.Git.__init__
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.stdout.split
    - typing.cast.object
    - typing.BinaryIO.tree
    - typing.cast.object.tree.dereference_recursive
    - re.search
    - typing.IO.tree.odb.info
    - typing.cast.object.head.commit.tree.dereference_recursive
    - os.path.isdir
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree
    - os.access
    - typing.cast.object.head.commit.tree.resolve
    - typing.BinaryIO.tree.stdout.split
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.tree.object.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.odb.info
    - typing.cast.resolve
    - typing.BinaryIO.tree.repo.odb.info
    - typing.cast.head.commit.stdout.split
    - p.upper
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.object.head.commit.stdout.split
    - typing.cast.tree.head.ref.log_entry
    - _logger.debug
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - os.path.abspath
    - typing.cast.odb.info
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - <builtin>.issubclass
    - typing.cast.tree.object.repo.odb.info
    - os.path.normpath
    - os.path.islink
    - <builtin>.type
    - typing.cast.object.stdout.split
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - git.config.GitConfigParser._acquire_lock
    - git.cmd.Popen.tree.stdout.split
    - typing.IO.tree
    - <builtin>.any
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - typing.cast.tree.object.resolve
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.repo.odb.info
    - local_pid.isdigit
    - typing.cast.object.head.commit.dereference_recursive
    - typing.cast.tree.head.commit
    - typing.cast.object.tree.stdout.split
    - regex.match
    - os.getenv
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - folder.strip
    - typing.cast.tree.object.head.commit.resolve
    - git.cmd.Popen.repo.odb.info
    - datetime.timedelta.stdout.split
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - datetime.timedelta.tree.resolve
    - typing.cast.head.commit.odb.info
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - os.stat
    - progs.append
    - subprocess.Popen.tree
    - datetime.timedelta.tree.odb.info
    - typing.cast.tree.object.stdout.split
    - git.objects.tree.Tree.__init__
    - git.cmd.Popen.tree.resolve
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - datetime.timedelta.dereference_recursive
    - typing.cast.head.commit.dereference_recursive
    - pathlib.Path
    - datetime.timedelta
    - git.util.expand_path
    - typing.cast.head.commit.tree.dereference_recursive
    - subprocess.Popen.tree.stdout.split
    - typing.cast.object.head.commit
    - subprocess.Popen.tree.repo.odb.info
    - subprocess.Popen.stdout.split
    - rev.startswith
    - typing.cast.object.tree.resolve
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - os.getcwd
    - typing.cast.head.commit.resolve
    - git.cmd.Popen.stdout.split
    - typing.IO
    - <builtin>.range
    - git.util.py_where.is_exec
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.config.get_config_path
    - match.groups
    - git.cmd.Git.is_cygwin
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit.tree
    - typing.cast.head.commit
    - os.path.isabs
    - typing.cast.object.head.commit.tree.stdout.split
    - git.util.is_cygwin_git
    - git.repo.fun.rev_parse
    - typing.BinaryIO.resolve
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.fun.is_git_dir
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stdout.split
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stdout.split
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stdout.split
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stdout.split
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stdout.split
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stdout.split
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stdout.split
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: local_pid.isdigit
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: child_pids.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.kill
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kill_check.set
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1316
    functionName: git.cmd.Git.execute.communicate
    functionSourceFile: git.cmd
    functionUses: 12
    functionsReached:
    - watchdog.cancel
    - watchdog.start
    - kill_check.is_set
    - proc.communicate
    - err.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: watchdog.start
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: watchdog.cancel
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kill_check.is_set
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: err.encode
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Event
    functionSourceFile: threading
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.Timer
    functionSourceFile: threading
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stdout_value.endswith
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stderr_value.endswith
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.BinOp object at 0x7fab5bea7b50>
    argNames:
    - source
    - destination
    - chunk_size
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 254
    functionName: git.util.stream_copy
    functionSourceFile: git.util
    functionUses: 13
    functionsReached:
    - destination.write
    - <builtin>.len
    - source.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stdout.read
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stderr.read
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.wait
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stdout.close
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stderr.close
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - stdout_value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1368
    functionName: git.cmd.Git.execute.as_text
    functionSourceFile: git.cmd
    functionUses: 12
    functionsReached:
    - s.decode
    - <builtin>.isinstance
    - git.compat.safe_decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.items
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextlib.contextmanager
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1431
    functionName: git.cmd.Git.custom_environment
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - kwargs.items
    - git.cmd.Git.update_environment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - value
    - split_single_char_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1449
    functionName: git.cmd.Git.transform_kwarg
    functionSourceFile: git.cmd
    functionUses: 13
    functionsReached:
    - git.cmd.dashify
    - string.replace
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - arg_list
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1477
    functionName: git.cmd.Git._unpack_args
    functionSourceFile: git.cmd
    functionUses: 12
    functionsReached:
    - <builtin>.isinstance
    - outlist.extend
    - outlist.append
    - git.cmd.Git._unpack_args
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: outlist.extend
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: outlist.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1487
    functionName: git.cmd.Git.__call__
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - git.cmd.Git.transform_kwargs
    - git.cmd.dashify
    - kwargs.items
    - <builtin>.isinstance
    - git.cmd.Git.transform_kwarg
    - string.replace
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: opts_kwargs.pop
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ext_args.index
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: call.extend
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: call.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - header_line
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1600
    functionName: git.cmd.Git._parse_object_header
    functionSourceFile: git.cmd
    functionUses: 7
    functionsReached:
    - <builtin>.len
    - <builtin>.int
    - header_line.split
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: header_line.split
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1631
    functionName: git.cmd.Git._prepare_ref
    functionSourceFile: git.cmd
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    - gitdb.util.bin_to_hex.decode
    - gitdb.util.bin_to_hex.encode
    - gitdb.util.bin_to_hex.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.bin_to_hex.decode
    functionSourceFile: gitdb
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.bin_to_hex.endswith
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.bin_to_hex.encode
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - attr_name
    - cmd_name
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1645
    functionName: git.cmd.Git._get_persistent_cmd
    functionSourceFile: git.cmd
    functionUses: 6
    functionsReached:
    - git.repo.base.Repo.__init__
    - proc.communicate
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.IO.repo.odb.info
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.resolve
    - destination.write
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - progs.append
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - <builtin>.hasattr
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.cygpath
    - git.util.LockFile._obtain_lock
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - os.path.dirname
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.tree.object.resolve
    - watchdog.start
    - regex.match
    - git.repo.fun.short_to_long
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - typing.cast
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options.update
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cmd
    - ref
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1658
    functionName: git.cmd.Git.__get_object_header
    functionSourceFile: git.cmd
    functionUses: 6
    functionsReached:
    - typing.cast.head.commit.stdin.flush
    - typing.IO.stdin.write
    - subprocess.Popen.stdin.write
    - subprocess.Popen.tree.stdout.readline
    - typing.IO.tree.stdin.flush
    - typing.IO.tree.stdin.write
    - typing.BinaryIO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.tree.object.stdout.readline
    - datetime.timedelta.tree.stdin.flush
    - typing.cast.head.commit.tree.stdin.flush
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.tree.stdin.write
    - subprocess.Popen.stdin.flush
    - typing.cast.tree.head.commit.stdin.flush
    - gitdb.util.bin_to_hex.decode
    - gitdb.util.bin_to_hex.encode
    - <builtin>.str
    - typing.cast.tree.object.head.commit.stdin.write
    - subprocess.Popen.tree.stdin.flush
    - typing.cast.tree.object.stdin.write
    - <builtin>.int
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.stdout.readline
    - typing.BinaryIO.stdout.readline
    - typing.cast.head.commit.tree.stdin.write
    - typing.cast.stdin.flush
    - git.cmd.Popen.stdin.write
    - typing.cast.head.commit.tree.stdout.readline
    - typing.BinaryIO.tree.stdout.readline
    - typing.BinaryIO.stdin.flush
    - typing.BinaryIO.stdin.write
    - git.cmd.Git._prepare_ref
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.object.stdout.readline
    - typing.cast.tree.head.commit.stdin.write
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - typing.cast.object.head.commit.stdin.flush
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast.object.stdin.write
    - typing.cast.object.tree.stdout.readline
    - typing.cast.stdout.readline
    - gitdb.util.bin_to_hex.endswith
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - datetime.timedelta.stdout.readline
    - typing.cast.head.commit.stdin.write
    - git.cmd.Popen.stdout.readline
    - git.cmd.Popen.stdin.flush
    - typing.cast.tree.stdin.flush
    - typing.cast.object.head.commit.stdin.write
    - typing.BinaryIO.tree.stdin.write
    - typing.cast.tree.stdout.readline
    - <builtin>.len
    - typing.cast.stdin.write
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.object.stdin.flush
    - datetime.timedelta.tree.stdin.write
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.object.tree.stdin.write
    - typing.IO.stdin.flush
    - <builtin>.isinstance
    - typing.cast.tree.head.commit.stdout.readline
    - datetime.timedelta.stdin.write
    - typing.cast.object.tree.stdin.flush
    - typing.cast.object.stdin.flush
    - datetime.timedelta.stdin.flush
    - typing.IO.stdout.readline
    - header_line.split
    - typing.cast.object.head.commit.tree.stdin.flush
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stdin.write
    functionSourceFile: subprocess
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stdin.write
    functionSourceFile: subprocess
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stdin.write
    functionSourceFile: git
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stdin.write
    functionSourceFile: datetime
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stdin.write
    functionSourceFile: git
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stdin.write
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stdin.write
    functionSourceFile: datetime
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stdin.flush
    functionSourceFile: datetime
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stdin.flush
    functionSourceFile: subprocess
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stdin.flush
    functionSourceFile: subprocess
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stdin.flush
    functionSourceFile: git
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stdin.flush
    functionSourceFile: git
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stdin.flush
    functionSourceFile: datetime
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stdin.flush
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.stdout.readline
    functionSourceFile: subprocess
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.stdout.readline
    functionSourceFile: typing
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.stdout.readline
    functionSourceFile: typing
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.stdout.readline
    functionSourceFile: datetime
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.stdout.readline
    functionSourceFile: typing
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.stdout.readline
    functionSourceFile: subprocess
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.stdout.readline
    functionSourceFile: typing
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.stdout.readline
    functionSourceFile: datetime
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.stdout.readline
    functionSourceFile: git
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.stdout.readline
    functionSourceFile: typing
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.stdout.readline
    functionSourceFile: git
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.stdout.readline
    functionSourceFile: typing
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 1680
    functionName: git.cmd.Git.get_object_data
    functionSourceFile: git.cmd
    functionUses: 0
    functionsReached:
    - datetime.timedelta.tree.stdin.flush
    - git.repo.base.Repo.__init__
    - proc.communicate
    - typing.cast.tree.head.commit.stdin.flush
    - call.append
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.head.commit.tree.stdout.readline
    - typing.IO.repo.odb.info
    - typing.cast.object.stdin.write
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - datetime.timedelta.stdout.readline
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stream.read
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.BinaryIO.stdin.write
    - typing.cast.tree.object.head.commit.stdout.readline
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.cmd.Git._get_persistent_cmd
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - typing.cast.object.tree.stdin.write
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.stdin.flush
    - typing.IO.stdin.write
    - typing.cast.object.resolve
    - git.cmd.Git.__get_object_header
    - destination.write
    - typing.IO.tree.odb.info
    - gitdb.util.bin_to_hex.decode
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - typing.BinaryIO.stdin.flush
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.stdout.readline
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.cmd.Popen.stdout.readline
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.tree.stdin.flush
    - call.extend
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - typing.cast.head.ref.log_entry
    - header_line.split
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stdin.flush
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - datetime.timedelta.tree.stdout.readline
    - typing.cast.object.tree.repo.odb.info
    - io.BytesIO
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.BinaryIO.stdout.readline
    - progs.append
    - typing.cast.tree.head.commit.stdin.write
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.head.commit.stdin.write
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - datetime.timedelta.tree.stdin.write
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.stdin.flush
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - options.update
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.stdout.readline
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Git._prepare_ref
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - typing.cast.head.commit.stdin.write
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - typing.BinaryIO.tree.stdin.write
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.stream_object_data
    - git.util.stream_copy
    - typing.IO.stdout.readline
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git._parse_object_header
    - subprocess.Popen.stdin.flush
    - git.cmd.Git.__init__
    - typing.cast.object
    - <builtin>.setattr
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.stdin.flush
    - typing.cast.resolve
    - ext_args.index
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.cmd.Git.transform_kwargs
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.tree.stdout.readline
    - subprocess.Popen.tree.stdin.write
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.tree.object.stdin.write
    - typing.cast.object.head.commit.stdout.readline
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.stdin.write
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - <builtin>.hasattr
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - typing.cast.object.head.commit.tree.stdin.flush
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - datetime.timedelta.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - subprocess.Popen.stdout.readline
    - typing.cast.tree.stdin.write
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - git.cmd.Popen.stdin.write
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - gitdb.util.bin_to_hex.endswith
    - os.path.dirname
    - typing.IO.tree.stdin.write
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.stdin.flush
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - git.cmd.Git.CatFileContentStream.__init__
    - watchdog.cancel
    - typing.cast.object.tree.stdout.readline
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - git.cmd.Popen.tree.stdin.write
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.tree.stdin.flush
    - typing.cast.tree.object.resolve
    - typing.IO.tree.stdin.flush
    - typing.cast.object.head.commit.tree.stdout.readline
    - watchdog.start
    - git.repo.fun.short_to_long
    - regex.match
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.IO.stdin.flush
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - outlist.extend
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - datetime.timedelta.stdin.flush
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - typing.cast.tree.object.head.commit.stdin.write
    - typing.cast.head.commit.tree.stdin.write
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.cast.object.head.commit.stdin.flush
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.object.head.commit.tree.stdin.write
    - typing.IO.tree.stdout.readline
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.cmd.Git._call_process
    - proc.wait
    - git.cmd.Popen.stdin.flush
    - git.cmd.Git._unpack_args
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - string.replace
    - outlist.append
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - typing.cast.head.commit.stdout.readline
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.cast.tree.stdout.readline
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - subprocess.Popen.stdin.write
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex.encode
    - os.access
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - git.cmd.dashify
    - typing.cast.object.tree.odb.info
    - threading.Event
    - git.cmd.Popen.tree.stdin.flush
    - typing.cast
    - typing.cast.tree.object.stdin.flush
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - typing.cast.tree.head.commit.stdout.readline
    - os.path.normpath
    - datetime.timedelta.stdin.write
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.stdout.readline
    - typing.cast.head.commit.tree.stdin.flush
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - opts_kwargs.pop
    - subprocess.Popen.tree.stdin.flush
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - typing.BinaryIO.tree.stdout.readline
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - git.cmd.Git.transform_kwarg
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmd.__del__
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.diff
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - re.compile
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enum.auto
    functionSourceFile: enum
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.diff.DiffConstants
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - enum.auto
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - matchobj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 98
    functionName: git.diff._octal_repl
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - <builtin>.bytearray
    - matchobj.group
    - <builtin>.int
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: matchobj.group
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bytearray
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bytes
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b2b97f0>
    argNames:
    - path
    - has_ab_prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 105
    functionName: git.diff.decode_path
    functionSourceFile: git.diff
    functionUses: 2
    functionsReached:
    - _octal_byte_re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _octal_byte_re.sub
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 172
    functionName: git.diff.Diffable._process_diff_args
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 18
    IfCount: 7
    argCount: 5
    argDefaultValues:
    - <ast.Name object at 0x7fab5b0dbb20>
    - <ast.Constant object at 0x7fab5b0dbfd0>
    - <ast.Constant object at 0x7fab5b0db730>
    argNames:
    - self
    - other
    - paths
    - create_patch
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 184
    functionName: git.diff.Diffable.diff
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - args.insert
    - args.append
    - typing.cast.diff
    - typing.cast.diff_tree
    - git.index.base.IndexFile._process_diff_args
    - args.index
    - args.pop
    - proc.wait
    - args.extend
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.append
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.any
    functionSourceFile: <builtin>
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.insert
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 633
    functionName: git.index.base.IndexFile._process_diff_args
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - args.index
    - args.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.diff_tree
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.TypeVar
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 7
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - change_type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 302
    functionName: git.diff.DiffIndex.iter_change_type
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.diff.Diff
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 16
    argDefaultValues: []
    argNames:
    - self
    - repo
    - a_rawpath
    - b_rawpath
    - a_blob_id
    - b_blob_id
    - a_mode
    - b_mode
    - new_file
    - deleted_file
    - copied_file
    - raw_rename_from
    - raw_rename_to
    - diff
    - change_type
    - score
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 412
    functionName: git.diff.Diff.__init__
    functionSourceFile: git.diff
    functionUses: 3
    functionsReached:
    - <builtin>.super
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - <builtin>.isinstance
    - <builtin>.enumerate
    - typing.cast
    - submodule.module_exists
    - gitdb.util.hex_to_bin
    - git.objects.util.mode_str_to_int
    - <builtin>.reversed
    - submodule.module
    - a_rawpath.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - modestr
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: git.objects.util.mode_str_to_int
    functionSourceFile: git.objects.util
    functionUses: 4
    functionsReached:
    - <builtin>.reversed
    - <builtin>.enumerate
    - typing.cast
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: a_rawpath.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: submodule.module_exists
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: submodule.module
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ae3d9d0>
    - <ast.Constant object at 0x7fab5ae3d8e0>
    argNames:
    - self
    - repo
    - binsha
    - mode
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: git.objects.base.IndexObject.__init__
    functionSourceFile: git.objects.base
    functionUses: 22
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 473
    functionName: git.diff.Diff.__eq__
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 480
    functionName: git.diff.Diff.__ne__
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 483
    functionName: git.diff.Diff.__hash__
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    - <builtin>.tuple
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 0
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 486
    functionName: git.diff.Diff.__str__
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - <builtin>.zip
    - <builtin>.len
    - <builtin>.isinstance
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.max
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 532
    functionName: git.diff.Diff.a_path
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 536
    functionName: git.diff.Diff.b_path
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 540
    functionName: git.diff.Diff.rename_from
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 544
    functionName: git.diff.Diff.rename_to
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 548
    functionName: git.diff.Diff.renamed
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 566
    functionName: git.diff.Diff.renamed_file
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - path_match
    - rename_match
    - path_fallback_match
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 571
    functionName: git.diff.Diff._pick_best_path
    functionSourceFile: git.diff
    functionUses: 1
    functionsReached:
    - _octal_byte_re.sub
    - git.diff.decode_path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - proc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 584
    functionName: git.diff.Diff._index_from_patch_format
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - header.end
    - typing.cast.tree.object.head.commit.rstrip
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - datetime.timedelta.tree.rstrip
    - subprocess.Popen.stdout.close
    - <builtin>.enumerate
    - subprocess.Popen._terminate
    - datetime.timedelta.tree.stderr.read
    - typing.cast.object.head.commit.encode
    - typing.cast.tree.stdin.close
    - typing.IO.tree.wait
    - submodule.module_exists
    - line.decode
    - typing.cast.tree.stderr.read
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - submodule.module
    - datetime.timedelta.encode
    - a_rawpath.decode
    - typing.cast.object.head.commit.tree.stderr.close
    - typing.cast.stderr.close
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.object.tree.poll
    - typing.cast.tree.object.head.commit.terminate
    - a_mode.decode
    - previous_header.end
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - _octal_byte_re.sub
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - _header.groups
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - _header.start
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - b_mode.decode
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - git.diff.Diff._pick_best_path
    - gitdb.util.hex_to_bin
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.rstrip
    - typing.cast.object.head.commit.tree.encode
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - <builtin>.super
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - a_blob_id.decode
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - git.diff.Diff.__init__
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - index.append
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - _logger.debug
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - git.diff.decode_path
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - git.objects.util.mode_str_to_int
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - cls.re_header.finditer
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - b_blob_id.decode
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - git.objects.base.IndexObject.__init__
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - <builtin>.int
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - <builtin>.reversed
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - <builtin>.bool
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.re_header.finditer
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _header.groups
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: previous_header.end
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _header.start
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: a_blob_id.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: b_blob_id.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: a_mode.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: b_mode.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: index.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: header.end
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - lines_bytes
    - repo
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 677
    functionName: git.diff.Diff._handle_diff_line
    functionSourceFile: git.diff
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - index.append
    - <builtin>.enumerate
    - submodule.module_exists
    - path.rstrip
    - git.objects.util.mode_str_to_int
    - lines_bytes.decode
    - <builtin>.reversed
    - submodule.module
    - a_rawpath.decode
    - score_str.isdigit
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - path.split
    - lines.split
    - meta.split
    - typing.cast
    - path.encode
    - lines.partition
    - path.strip
    - b_path_str.encode
    - <builtin>.isinstance
    - a_path_str.encode
    - gitdb.util.hex_to_bin
    - line.partition
    - git.diff.Diff.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lines_bytes.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lines.partition
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lines.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.partition
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.rstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: meta.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: score_str.isdigit
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.strip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: a_path_str.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: b_path_str.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - proc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 750
    functionName: git.diff.Diff._index_from_raw_format
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - datetime.timedelta.tree.rstrip
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen._terminate
    - typing.cast.tree.stdin.close
    - typing.cast.object.head.commit.encode
    - typing.cast.stderr.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.object.tree.poll
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.object.head.commit.tree.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: -1
    functionName: git.diff.Diff._index_from_raw_format.<lambda1>
    functionSourceFile: git.diff
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - index.append
    - <builtin>.enumerate
    - git.diff.Diff._handle_diff_line
    - path.rstrip
    - submodule.module_exists
    - git.objects.util.mode_str_to_int
    - lines_bytes.decode
    - <builtin>.reversed
    - submodule.module
    - a_rawpath.decode
    - score_str.isdigit
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - path.split
    - lines.split
    - meta.split
    - typing.cast
    - path.encode
    - lines.partition
    - path.strip
    - b_path_str.encode
    - <builtin>.isinstance
    - a_path_str.encode
    - gitdb.util.hex_to_bin
    - line.partition
    - git.diff.Diff.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.base
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - repo
    - binsha
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: git.objects.base.Object.__init__
    functionSourceFile: git.objects.base
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 120
    functionName: git.objects.base.Object.new
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - repo.rev_parse
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.rev_parse
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - sha1
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 137
    functionName: git.objects.base.Object.new_from_sha
    functionSourceFile: git.objects.base
    functionUses: 16
    functionsReached:
    - git.cmd.Popen.odb.info
    - typing.cast.tree.repo.odb.info
    - <builtin>.super
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - datetime.timedelta.odb.info
    - typing.cast.object.tree.repo.odb.info
    - subprocess.Popen.odb.info
    - typing.cast.object.head.commit.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.IO.tree.odb.info
    - typing.IO.odb.info
    - typing.cast.head.commit.repo.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.head.commit.odb.info
    - typing.cast.tree.object.odb.info
    - typing.IO.tree.repo.odb.info
    - datetime.timedelta.tree.odb.info
    - git.objects.tree.Tree.__init__
    - typing.cast.object.tree.odb.info
    - typing.cast.object.odb.info
    - typing.IO.repo.odb.info
    - typing.BinaryIO.tree.repo.odb.info
    - typing.cast.object.head.commit.tree.repo.odb.info
    - subprocess.Popen.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - typing.BinaryIO.tree.odb.info
    - git.objects.commit.Commit.__init__
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - datetime.timedelta.tree.repo.odb.info
    - subprocess.Popen.tree.odb.info
    - typing.cast.head.commit.tree.odb.info
    - typing.cast.odb.info
    - typing.cast.tree.object.head.commit.odb.info
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.info
    - <builtin>.isinstance
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.object.head.commit.odb.info
    - <builtin>.type
    - typing.cast.repo.odb.info
    - git.objects.tag.TagObject.__init__
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.tree.odb.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - object_type_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 111
    functionName: git.objects.util.get_object_type_by_name
    functionSourceFile: ''
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.BinOp object at 0x7fab5b875f10>
    - <ast.Constant object at 0x7fab5b875940>
    argNames:
    - self
    - repo
    - binsha
    - mode
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 192
    functionName: git.objects.tree.Tree.__init__
    functionSourceFile: git.objects.tree
    functionUses: 20
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 2
    IfCount: 12
    argCount: 14
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b8aed60>
    - <ast.Constant object at 0x7fab5b8ae490>
    - <ast.Constant object at 0x7fab5b8aeac0>
    - <ast.Constant object at 0x7fab5b8ae4c0>
    - <ast.Constant object at 0x7fab5b8aedc0>
    - <ast.Constant object at 0x7fab5b8ae1c0>
    - <ast.Constant object at 0x7fab5b8ae400>
    - <ast.Constant object at 0x7fab5b8ae4f0>
    - <ast.Constant object at 0x7fab5b8aea60>
    - <ast.Constant object at 0x7fab5b8ae9d0>
    - <ast.Constant object at 0x7fab5b8aec70>
    argNames:
    - self
    - repo
    - binsha
    - tree
    - author
    - authored_date
    - author_tz_offset
    - committer
    - committed_date
    - committer_tz_offset
    - message
    - parents
    - encoding
    - gpgsig
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 109
    functionName: git.objects.commit.Commit.__init__
    functionSourceFile: git.objects.commit
    functionUses: 34
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b871730>
    - <ast.Constant object at 0x7fab5b8717f0>
    - <ast.Constant object at 0x7fab5b871c70>
    - <ast.Constant object at 0x7fab5b871850>
    - <ast.Constant object at 0x7fab5b871070>
    - <ast.Constant object at 0x7fab5b871940>
    argNames:
    - self
    - repo
    - binsha
    - object
    - tag
    - tagger
    - tagged_date
    - tagger_tz_offset
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: git.objects.tag.TagObject.__init__
    functionSourceFile: git.objects.tag
    functionUses: 18
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.odb.info
    functionSourceFile: git
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.odb.info
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.repo.odb.info
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.odb.info
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.odb.info
    functionSourceFile: subprocess
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.repo.odb.info
    functionSourceFile: subprocess
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.repo.odb.info
    functionSourceFile: git
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.odb.info
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.odb.info
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.odb.info
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.odb.info
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.repo.odb.info
    functionSourceFile: subprocess
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.repo.odb.info
    functionSourceFile: git
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.repo.odb.info
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.odb.info
    functionSourceFile: subprocess
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.odb.info
    functionSourceFile: typing
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.repo.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.odb.info
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.odb.info
    functionSourceFile: git
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 154
    functionName: git.objects.base.Object._set_cache_
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.info
    - typing.cast.odb.info
    - <builtin>.super
    - typing.cast.tree.odb.info
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.tree.object.odb.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 162
    functionName: git.objects.base.Object.__eq__
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 168
    functionName: git.objects.base.Object.__ne__
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 174
    functionName: git.objects.base.Object.__hash__
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 178
    functionName: git.objects.base.Object.__str__
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 182
    functionName: git.objects.base.Object.__repr__
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 187
    functionName: git.objects.base.Object.hexsha
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - gitdb.util.bin_to_hex
    - gitdb.util.bin_to_hex.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: git.objects.base.Object.data_stream
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.stream
    - typing.cast.odb.stream
    - typing.cast.tree.object.odb.stream
    - typing.cast.tree.odb.stream
    - typing.cast.object.head.commit.tree.odb.stream
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.odb.stream
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.odb.stream
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.odb.stream
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.odb.stream
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.odb.stream
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ostream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 203
    functionName: git.objects.base.Object.stream_data
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.stream
    - typing.cast.odb.stream
    - typing.cast.tree.object.odb.stream
    - typing.cast.object.head.commit.tree.odb.stream
    - source.read
    - destination.write
    - git.util.stream_copy
    - typing.cast.tree.odb.stream
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 264
    functionName: git.objects.base.IndexObject.__hash__
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 272
    functionName: git.objects.base.IndexObject._set_cache_
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 284
    functionName: git.objects.base.IndexObject.name
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - os.path.basename
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.basename
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 289
    functionName: git.objects.base.IndexObject.abspath
    functionSourceFile: git.objects.base
    functionUses: 0
    functionsReached:
    - git.util.join_path_native
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.to_native_path_linux
    - git.util.to_native_path_windows
    - git.util.join_path
    - b.startswith
    - typing.cast.working_tree_dir.replace
    - path.replace
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised:
    - WorkTreeRepositoryUnsupported
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - p
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 309
    functionName: git.util.join_path_native
    functionSourceFile: git.util
    functionUses: 11
    functionsReached:
    - git.util.to_native_path_linux
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.to_native_path_windows
    - git.util.join_path
    - b.startswith
    - typing.cast.working_tree_dir.replace
    - path.replace
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 11
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.types
    functionSourceFile: git.types
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 153
    functionName: git.types._getattr
    functionSourceFile: git.types
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: git.types.__dir__
    functionSourceFile: git.types
    functionUses: 0
    functionsReached:
    - <builtin>.globals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.globals
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.repo
    functionSourceFile: git.repo
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects
    functionSourceFile: git.objects
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: git.objects.util
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - re.compile
    - datetime.timedelta
    - typing.TypeVar
    - git.cmd.Popen
    - git.objects.util.tzoffset.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - f
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 67
    functionName: git.objects.util.runtime_checkable
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.reversed
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - utctz
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 146
    functionName: git.objects.util.utctz_to_altz
    functionSourceFile: git.objects.util
    functionUses: 15
    functionsReached:
    - <builtin>.abs
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.abs
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - altz
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 158
    functionName: git.objects.util.altz_to_utctz_str
    functionSourceFile: git.objects.util
    functionUses: 5
    functionsReached:
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - offset
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 171
    functionName: git.objects.util.verify_utctz
    functionSourceFile: git.objects.util
    functionUses: 11
    functionsReached:
    - <builtin>.len
    - <builtin>.ValueError
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b397430>
    argNames:
    - self
    - secs_west_of_utc
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 191
    functionName: git.objects.util.tzoffset.__init__
    functionSourceFile: git.objects.util
    functionUses: 4
    functionsReached:
    - datetime.timedelta
    - git.cmd.Popen
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 195
    functionName: git.objects.util.tzoffset.__reduce__
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - typing.cast.head.commit.total_seconds
    - typing.BinaryIO.total_seconds
    - typing.cast.tree.object.head.commit.total_seconds
    - typing.cast.tree.head.commit.total_seconds
    - typing.cast.object.head.commit.tree.total_seconds
    - typing.cast.object.tree.total_seconds
    - subprocess.Popen.total_seconds
    - git.cmd.Popen.total_seconds
    - typing.BinaryIO.tree.total_seconds
    - typing.cast.tree.object.total_seconds
    - datetime.timedelta.total_seconds
    - typing.cast.total_seconds
    - typing.cast.object.total_seconds
    - datetime.timedelta.tree.total_seconds
    - typing.cast.object.head.commit.total_seconds
    - git.cmd.Popen.tree.total_seconds
    - typing.IO.total_seconds
    - typing.cast.tree.total_seconds
    - typing.cast.head.commit.tree.total_seconds
    - typing.IO.tree.total_seconds
    - subprocess.Popen.tree.total_seconds
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.total_seconds
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.total_seconds
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.total_seconds
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.total_seconds
    functionSourceFile: typing
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.total_seconds
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.total_seconds
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.total_seconds
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.total_seconds
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 198
    functionName: git.objects.util.tzoffset.utcoffset
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 201
    functionName: git.objects.util.tzoffset.tzname
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 204
    functionName: git.objects.util.tzoffset.dst
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - timestamp
    - tz_offset
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 211
    functionName: git.objects.util.from_timestamp
    functionSourceFile: git.objects.util
    functionUses: 2
    functionsReached:
    - datetime.datetime.fromtimestamp
    - datetime.timedelta
    - git.objects.util.tzoffset.__init__
    - utc_dt.astimezone
    - git.cmd.Popen
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.fromtimestamp
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: utc_dt.astimezone
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 6
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - string_date
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 222
    functionName: git.objects.util.parse_date
    functionSourceFile: git.objects.util
    functionUses: 10
    functionsReached:
    - string_date.split
    - string_date.count
    - git.objects.util.utctz_to_altz
    - git.objects.util.verify_utctz
    - <builtin>.int
    - <builtin>.isinstance
    - string_date.astimezone
    - time.strptime
    - typing.cast
    - date_formats.append
    - <builtin>.abs
    - typing.cast.total_seconds
    - calendar.timegm
    - <builtin>.ValueError
    - timestamp.startswith
    - <builtin>.len
    - string_date.utcoffset
    - string_date.rfind
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string_date.utcoffset
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string_date.astimezone
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string_date.count
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string_date.rfind
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string_date.split
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: timestamp.startswith
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: date_formats.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.strptime
    functionSourceFile: time
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: calendar.timegm
    functionSourceFile: calendar
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - line
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 326
    functionName: git.objects.util.parse_actor_and_date
    functionSourceFile: git.objects.util
    functionUses: 3
    functionsReached:
    - git.util.Actor._from_string
    - git.objects.util.utctz_to_altz
    - _re_actor_epoch.search
    - <builtin>.int
    - m.group
    - <builtin>.abs
    - m.groups
    - _re_only_actor.search
    - cls.name_email_regex.search
    - cls.name_only_regex.search
    - git.util.Actor.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _re_actor_epoch.search
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.groups
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _re_only_actor.search
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - process
    - stream_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 360
    functionName: git.objects.util.ProcessStreamAdapter.__init__
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 364
    functionName: git.objects.util.ProcessStreamAdapter.__getattr__
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.util.Traversable
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - abc.abstractmethod
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: abc.abstractmethod
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 388
    functionName: git.objects.util.Traversable._get_intermediate_items
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 401
    functionName: git.objects.util.Traversable.list_traverse
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.super
    - git.objects.util.Traversable._list_traverse
    - git.objects.tree.Tree.traverse
    - git.util.IterableList.__init__
    - out.extend
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b4f0df0>
    argNames:
    - self
    - as_edge
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 416
    functionName: git.objects.util.Traversable._list_traverse
    functionSourceFile: git.objects.util
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - git.objects.tree.Tree.traverse
    - git.util.IterableList.__init__
    - out.extend
    - <builtin>.isinstance
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad5a5e0>
    argNames:
    - self
    - id_attr
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1172
    functionName: git.util.IterableList.__init__
    functionSourceFile: ''
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Lambda object at 0x7fab5b32dcd0>
    - <ast.Lambda object at 0x7fab5b32d340>
    - <ast.UnaryOp object at 0x7fab5b32da30>
    - <ast.Constant object at 0x7fab5b32d3a0>
    - <ast.Constant object at 0x7fab5b32ddc0>
    - <ast.Constant object at 0x7fab5b32d5e0>
    - <ast.Constant object at 0x7fab5b32dac0>
    argNames:
    - self
    - predicate
    - prune
    - depth
    - branch_first
    - visit_once
    - ignore_self
    - as_edge
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 301
    functionName: git.objects.tree.Tree.traverse
    functionSourceFile: git.objects.tree
    functionUses: 2
    functionsReached:
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out.extend
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 452
    functionName: git.objects.util.Traversable.traverse
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - warnings.warn
    - git.objects.tree.Tree._get_intermediate_items
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - <builtin>.set
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - stack.extendleft
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - typing.NamedTuple.__init__
    - stack.extend
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - stack.append
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - git.objects.submodule.base.Submodule.module
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.objects.util.Traversable._traverse.addToStack
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - stack.pop
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - index_object._iter_convert_to_object
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - git.objects.util.Traversable._traverse
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - git.objects.tree.Tree.<lambda1>
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - collections.deque
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - git.objects.commit.Commit._get_intermediate_items
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - git.objects.submodule.base.Submodule._get_intermediate_items
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.tree.Tree.<lambda2>
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - visited.add
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - git.objects.util.Traversable.<lambda1>
    - <builtin>.range
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 8
    argDefaultValues:
    - <ast.Lambda object at 0x7fab5b2db310>
    - <ast.Lambda object at 0x7fab5b2dbcd0>
    - <ast.UnaryOp object at 0x7fab5b2db610>
    - <ast.Constant object at 0x7fab5ae8e220>
    - <ast.Constant object at 0x7fab5ae8e4c0>
    - <ast.Constant object at 0x7fab5ae8e7c0>
    - <ast.Constant object at 0x7fab5ae8e940>
    argNames:
    - self
    - predicate
    - prune
    - depth
    - branch_first
    - visit_once
    - ignore_self
    - as_edge
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 467
    functionName: git.objects.util.Traversable._traverse
    functionSourceFile: git.objects.util
    functionUses: 1
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.objects.tree.Tree._get_intermediate_items
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - <builtin>.set
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - stack.extendleft
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - typing.NamedTuple.__init__
    - stack.extend
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - stack.append
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - git.objects.submodule.base.Submodule.module
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.objects.util.Traversable._traverse.addToStack
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - stack.pop
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - index_object._iter_convert_to_object
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - git.objects.tree.Tree.<lambda1>
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - collections.deque
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - git.objects.commit.Commit._get_intermediate_items
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - git.objects.submodule.base.Submodule._get_intermediate_items
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.tree.Tree.<lambda2>
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - visited.add
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - git.objects.util.Traversable.<lambda1>
    - <builtin>.range
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.deque
    functionSourceFile: collections
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stack.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - stack
    - src_item
    - branch_first
    - depth
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 529
    functionName: git.objects.util.Traversable._traverse.addToStack
    functionSourceFile: git.objects.util
    functionUses: 2
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.objects.tree.Tree._get_intermediate_items
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - stack.extendleft
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - typing.NamedTuple.__init__
    - stack.extend
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - git.objects.submodule.base.Submodule.module
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - path.endswith
    - typing.cast.object.head.commit.tree.stderr.read
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - index_object._iter_convert_to_object
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - git.objects.commit.Commit._get_intermediate_items
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - git.objects.submodule.base.Submodule._get_intermediate_items
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - <builtin>.range
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - index_object
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 202
    functionName: git.objects.tree.Tree._get_intermediate_items
    functionSourceFile: git.objects.tree
    functionUses: 3
    functionsReached:
    - index_object._iter_convert_to_object
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 190
    functionName: git.objects.submodule.base.Submodule._get_intermediate_items
    functionSourceFile: git.objects.submodule.base
    functionUses: 5
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - git.objects.submodule.base.Submodule.module
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - path.endswith
    - typing.cast.object.head.commit.tree.stderr.read
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 200
    functionName: git.objects.commit.Commit._get_intermediate_items
    functionSourceFile: git.objects.commit
    functionUses: 3
    functionsReached:
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stack.extendleft
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stack.extend
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stack.pop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: visited.add
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.tree.Tree.<lambda2>
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.util.Traversable.<lambda1>
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.tree.Tree.<lambda1>
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 587
    functionName: git.objects.util.Serializable._serialize
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 602
    functionName: git.objects.util.Serializable._deserialize
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 619
    functionName: git.objects.util.TraversableIterableObj.list_traverse
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.util.TraversableIterableObj
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - typing.overload
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Lambda object at 0x7fab5b822fa0>
    - <ast.Lambda object at 0x7fab5b822b50>
    - <ast.UnaryOp object at 0x7fab5b822bb0>
    - <ast.Constant object at 0x7fab5b822be0>
    - <ast.Constant object at 0x7fab5b8221c0>
    - <ast.Constant object at 0x7fab5b822250>
    - <ast.Constant object at 0x7fab5b822f10>
    argNames:
    - self
    - predicate
    - prune
    - depth
    - branch_first
    - visit_once
    - ignore_self
    - as_edge
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 661
    functionName: git.objects.util.TraversableIterableObj.traverse
    functionSourceFile: git.objects.util
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: git.util
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - re.compile
    - git.util._read_env_flag
    - __all__.append
    - _logger.warning
    - typing.TypeVar
    - contextlib.contextmanager
    - value.strip
    - typing.overload
    - git.util._read_win_env_flag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: __all__.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 115
    functionName: git.util._read_env_flag
    functionSourceFile: git.util
    functionUses: 2
    functionsReached:
    - _logger.warning
    - value.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _logger.warning
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.strip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 141
    functionName: git.util._read_win_env_flag
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - git.util._read_env_flag
    - _logger.warning
    - value.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 165
    functionName: git.util.unbare_repo
    functionSourceFile: git.util
    functionUses: 2
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.wraps
    functionSourceFile: functools
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 172
    functionName: git.util.unbare_repo.wrapper
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - new_dir
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: git.util.cwd
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - os.getcwd
    - os.chdir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.chdir
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 212
    functionName: git.util.rmtree
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - shutil.rmtree
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - function
    - path
    - _excinfo
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: git.util.rmtree.handler
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - os.chmod
    linkageType: pythonLinkage
    raised:
    - SkipTest
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.chmod
    functionSourceFile: os
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: shutil.rmtree
    functionSourceFile: shutil
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 245
    functionName: git.util.rmfile
    functionSourceFile: git.util
    functionUses: 10
    functionsReached:
    - os.chmod
    - os.remove
    - os.path.isfile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: source.read
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: destination.write
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - p
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 272
    functionName: git.util.join_path
    functionSourceFile: git.util
    functionUses: 38
    functionsReached:
    - b.startswith
    - path.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: b.startswith
    functionSourceFile: <builtin>
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.endswith
    functionSourceFile: <builtin>
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 292
    functionName: git.util.to_native_path_windows
    functionSourceFile: git.util
    functionUses: 12
    functionsReached:
    - <builtin>.str
    - path.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.replace
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 303
    functionName: git.util.to_native_path_linux
    functionSourceFile: git.util
    functionUses: 27
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.cast.working_tree_dir.replace
    - typing.cast.tree.working_tree_dir.replace
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.working_tree_dir.replace
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.working_tree_dir.replace
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.working_tree_dir.replace
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.working_tree_dir.replace
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.working_tree_dir.replace
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b5e4ca0>
    argNames:
    - path
    - is_file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 318
    functionName: git.util.assure_directory_exists
    functionSourceFile: git.util
    functionUses: 5
    functionsReached:
    - os.path.dirname
    - os.path.isdir
    - os.makedirs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isdir
    functionSourceFile: os
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 337
    functionName: git.util._get_exe_extensions
    functionSourceFile: git.util
    functionUses: 32
    functionsReached:
    - p.upper
    - <builtin>.tuple
    - os.environ.get
    - PATHEXT.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: p.upper
    functionSourceFile: <builtin>
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PATHEXT.split
    functionSourceFile: <builtin>
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b4e79d0>
    argNames:
    - program
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 347
    functionName: git.util.py_where
    functionSourceFile: git.util
    functionUses: 31
    functionsReached:
    - os.access
    - git.util.py_where.is_exec
    - p.upper
    - os.path.isfile
    - <builtin>.tuple
    - git.util._get_exe_extensions
    - progs.append
    - os.environ.get
    - fpath.upper
    - PATHEXT.split
    - <builtin>.str
    - <builtin>.any
    - folder.strip
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - fpath
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 363
    functionName: git.util.py_where.is_exec
    functionSourceFile: git.util
    functionUses: 32
    functionsReached:
    - os.path.isfile
    - fpath.upper
    - os.access
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fpath.upper
    functionSourceFile: <builtin>
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: folder.strip
    functionSourceFile: <builtin>
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: progs.append
    functionSourceFile: <builtin>
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - drive
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 385
    functionName: git.util._cygexpath
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - drive.lower
    - git.util.cygpath
    - os.path.expandvars
    - os.path.expanduser
    - match.groups
    - os.path.normpath
    - os.path.isabs
    - regex.match
    - p_str.replace
    - <builtin>.str
    - path.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: drive.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: p_str.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.util.<lambda1>
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - rest_path.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rest_path.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.util.<lambda2>
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.util.<lambda3>
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.startswith
    functionSourceFile: <builtin>
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex.match
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.groups
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 440
    functionName: git.util.decygpath
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - drive.upper
    - _decygpath_regex.match
    - path.replace
    - m.groups
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _decygpath_regex.match
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: drive.upper
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - git_executable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 455
    functionName: git.util._is_cygwin_git
    functionSourceFile: git.util
    functionUses: 30
    functionsReached:
    - os.path.dirname
    - git.util._get_exe_extensions
    - os.environ.get
    - fpath.upper
    - <builtin>.str
    - folder.strip
    - subprocess.Popen
    - os.access
    - progs.append
    - PATHEXT.split
    - p.upper
    - os.path.isfile
    - <builtin>.tuple
    - os.path.join
    - git.util.py_where.is_exec
    - git.util.py_where
    - _is_cygwin_cache.get
    - process.communicate
    - _logger.debug
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _is_cygwin_cache.get
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: process.communicate
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 495
    functionName: git.util.get_user_id
    functionSourceFile: git.util
    functionUses: 2
    functionsReached:
    - getpass.getuser
    - platform.node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: getpass.getuser
    functionSourceFile: getpass
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: platform.node
    functionSourceFile: platform
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.resolve
    functionSourceFile: datetime
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.resolve
    functionSourceFile: datetime
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.resolve
    functionSourceFile: subprocess
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.resolve
    functionSourceFile: git
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.resolve
    functionSourceFile: git
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.resolve
    functionSourceFile: subprocess
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.resolve
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: new_cmdline.append
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlsplit
    functionSourceFile: urllib
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlsplit.netloc.replace
    functionSourceFile: urllib
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlsplit._replace
    functionSourceFile: urllib
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlunsplit
    functionSourceFile: urllib
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.util.RemoteProgress
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 595
    functionName: git.util.RemoteProgress.__init__
    functionSourceFile: git.util
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 7
    IfCount: 14
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - line
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 601
    functionName: git.util.RemoteProgress._parse_progress_line
    functionSourceFile: git.util
    functionUses: 17
    functionsReached:
    - <builtin>.float
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - git.util.CallableRemoteProgress.update
    - match.groups
    - <builtin>.isinstance
    - line.decode
    - git.util.RemoteProgress.__init__
    - <builtin>.len
    - message.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - line
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 704
    functionName: git.util.RemoteProgress.line_dropped
    functionSourceFile: ''
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.strip
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.endswith
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.float
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 763
    functionName: git.util.CallableRemoteProgress.update
    functionSourceFile: git.util
    functionUses: 19
    functionsReached:
    - git.util.RemoteProgress.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.rstrip
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.rstrip
    functionSourceFile: subprocess
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.rstrip
    functionSourceFile: git
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.rstrip
    functionSourceFile: subprocess
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.rstrip
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.rstrip
    functionSourceFile: git
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.rstrip
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b619af0>
    - <ast.Constant object at 0x7fab5b619fa0>
    argNames:
    - self
    - op_code
    - cur_count
    - max_count
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 708
    functionName: git.util.RemoteProgress.update
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 759
    functionName: git.util.CallableRemoteProgress.__init__
    functionSourceFile: git.util
    functionUses: 12
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.util.Actor
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 793
    functionName: git.util.Actor.__eq__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 796
    functionName: git.util.Actor.__ne__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 799
    functionName: git.util.Actor.__hash__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 802
    functionName: git.util.Actor.__str__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 805
    functionName: git.util.Actor.__repr__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.name_email_regex.search
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.name_only_regex.search
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b440040>
    argNames:
    - cls
    - env_name
    - env_email
    - config_reader
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 834
    functionName: git.util.Actor._main_actor
    functionSourceFile: git.util
    functionUses: 5
    functionsReached:
    - <builtin>.setattr
    - git.util.Actor.__init__
    - <builtin>.getattr
    - config_reader.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 843
    functionName: git.util.Actor._main_actor.default_email
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - getpass.getuser
    - git.util.get_user_id
    - platform.node
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 849
    functionName: git.util.Actor._main_actor.default_name
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - getpass.getuser
    - git.util.get_user_id
    - platform.node
    - git.util.Actor._main_actor.default_email
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: config_reader.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b7871c0>
    argNames:
    - cls
    - config_reader
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 874
    functionName: git.util.Actor.committer
    functionSourceFile: git.util
    functionUses: 3
    functionsReached:
    - git.util.Actor._main_actor
    - config_reader.get
    - <builtin>.setattr
    - git.util.Actor.__init__
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ac69eb0>
    argNames:
    - cls
    - config_reader
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 889
    functionName: git.util.Actor.author
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - git.util.Actor._main_actor
    - config_reader.get
    - <builtin>.setattr
    - git.util.Actor.__init__
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - total
    - files
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 924
    functionName: git.util.Stats.__init__
    functionSourceFile: git.util
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 929
    functionName: git.util.Stats._list_from_string
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - <builtin>.int
    - filename.strip
    - text.splitlines
    - git.util.Stats.__init__
    - line.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.splitlines
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filename.strip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - f
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 972
    functionName: git.util.IndexFileSHA1Writer.__init__
    functionSourceFile: git.util
    functionUses: 7
    functionsReached:
    - gitdb.util.make_sha
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.make_sha
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 976
    functionName: git.util.IndexFileSHA1Writer.write
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - gitdb.util.make_sha.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.make_sha.update
    functionSourceFile: gitdb
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 980
    functionName: git.util.IndexFileSHA1Writer.write_sha
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - gitdb.util.make_sha.digest
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.make_sha.digest
    functionSourceFile: gitdb
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 985
    functionName: git.util.IndexFileSHA1Writer.close
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - gitdb.util.make_sha.digest
    - git.util.IndexFileSHA1Writer.write_sha
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 990
    functionName: git.util.IndexFileSHA1Writer.tell
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file_path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1005
    functionName: git.util.LockFile.__init__
    functionSourceFile: git.util
    functionUses: 44
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1009
    functionName: git.util.LockFile.__del__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - os.path.isfile
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1057
    functionName: git.util.LockFile._release_lock
    functionSourceFile: git.util
    functionUses: 9
    functionsReached:
    - os.chmod
    - os.path.isfile
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1012
    functionName: git.util.LockFile._lock_file_path
    functionSourceFile: git.util
    functionUses: 56
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1016
    functionName: git.util.LockFile._has_lock
    functionSourceFile: git.util
    functionUses: 55
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1026
    functionName: git.util.LockFile._obtain_lock_or_raise
    functionSourceFile: git.util
    functionUses: 46
    functionsReached:
    - git.util.LockFile._lock_file_path
    - os.path.isfile
    - <builtin>.open
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised:
    - IOError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1050
    functionName: git.util.LockFile._obtain_lock
    functionSourceFile: git.util
    functionUses: 43
    functionsReached:
    - os.path.isfile
    - <builtin>.open
    - git.util.LockFile._lock_file_path
    - git.util.LockFile._obtain_lock_or_raise
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b49e430>
    - <ast.Attribute object at 0x7fab5b49e5b0>
    argNames:
    - self
    - file_path
    - check_interval_s
    - max_block_time_s
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1083
    functionName: git.util.BlockingLockFile.__init__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1102
    functionName: git.util.BlockingLockFile._obtain_lock
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - os.path.dirname
    - <builtin>.super
    - time.sleep
    - git.util.LockFile._lock_file_path
    - time.time
    - os.path.isdir
    linkageType: pythonLinkage
    raised:
    - IOError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.time
    functionSourceFile: time
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.sleep
    functionSourceFile: time
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad5af40>
    argNames:
    - cls
    - id_attr
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1169
    functionName: git.util.IterableList.__new__
    functionSourceFile: git.util
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1176
    functionName: git.util.IterableList.__contains__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.getattr
    - list.__contains__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: list.__contains__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1194
    functionName: git.util.IterableList.__getattr__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - list.__getattribute__
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: list.__getattribute__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1202
    functionName: git.util.IterableList.__getitem__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - list.__getitem__
    - <builtin>.getattr
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    - IndexError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: list.__getitem__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1216
    functionName: git.util.IterableList.__delitem__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - list.__delitem__
    - <builtin>.enumerate
    - <builtin>.isinstance
    - typing.cast
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised:
    - IndexError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: list.__delitem__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.util.IterableObj
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - abc.abstractmethod
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1257
    functionName: git.util.IterableObj.iter_items
    functionSourceFile: git.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b4e2070>
    - <ast.Constant object at 0x7fab5b4e2940>
    argNames:
    - cls
    - repo
    - common_path
    - remote
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 33
    functionName: git.refs.remote.RemoteReference.iter_items
    functionSourceFile: git.refs.remote
    functionUses: 12
    functionsReached:
    - <builtin>.super
    - git.util.join_path
    - b.startswith
    - path.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 516
    functionName: git.remote.FetchInfo.iter_items
    functionSourceFile: ''
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 268
    functionName: git.remote.PushInfo.iter_items
    functionSourceFile: ''
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 626
    functionName: git.remote.Remote.iter_items
    functionSourceFile: git.remote
    functionUses: 12
    functionsReached:
    - git.remote.Remote.__init__
    - section.find
    - section.rfind
    - section.startswith
    - repo.config_reader
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b397670>
    argNames:
    - cls
    - repo
    - parent_commit
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1572
    functionName: git.objects.submodule.base.Submodule.iter_items
    functionSourceFile: git.objects.submodule.base
    functionUses: 13
    functionsReached:
    - git.objects.submodule.util.sm_name
    - configparser.RawConfigParser.get
    - git.objects.submodule.base.Submodule.__init__
    - git.refs.symbolic.SymbolicReference.to_full_path
    - <builtin>.super
    - git.objects.submodule.base.Submodule._config_parser
    - repo.commit
    - <builtin>.isinstance
    - index.entry_key
    - configparser.RawConfigParser.sections
    - section.strip
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - <builtin>.type
    - <builtin>.str
    - git.objects.submodule.base.Submodule._sio_modules
    - io.BytesIO
    - configparser.RawConfigParser.has_option
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b871be0>
    argNames:
    - cls
    - repo
    - rev
    - paths
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 300
    functionName: git.objects.commit.Commit.iter_items
    functionSourceFile: git.objects.commit
    functionUses: 13
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - typing.cast.git.rev_list
    - typing.cast.object.head.commit.tree.readline
    - typing.BinaryIO.tree.wait
    - typing.cast.object.tree.wait
    - typing.cast.object.head.commit.tree.git.rev_list
    - typing.IO.wait
    - gitdb.utils.encoding.force_bytes
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.objects.commit.Commit._iter_from_process_or_stream
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.object.readline
    - typing.BinaryIO.stderr.read
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.tree.wait
    - typing.cast.object.stdout.readline
    - line.strip
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.object.git.rev_list
    - typing.cast.head.commit.wait
    - typing.cast.tree.object.stderr.read
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - <builtin>.tuple
    - typing.cast.object.tree.stderr.read
    - typing.cast.stdout.readline
    - typing.cast
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - git.objects.commit.Commit.__init__
    - _logger.debug
    - typing.cast.tree.object.git.rev_list
    - <builtin>.len
    - typing.cast.rev_list
    - typing.cast.tree.stdout.readline
    - args_list.extend
    - typing.cast.tree.object.wait
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.wait
    - <builtin>.isinstance
    - typing.BinaryIO.wait
    - gitdb.util.hex_to_bin
    - typing.cast.tree.readline
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out_list.extend
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - name
    - bases
    - clsdict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1293
    functionName: git.util.IterableClassWatcher.__init__
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1318
    functionName: git.util.Iterable.iter_items
    functionSourceFile: git.util
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1331
    functionName: git.util.Iterable.list_items
    functionSourceFile: git.util
    functionUses: 0
    functionsReached:
    - out_list.extend
    - git.util.IterableList.__init__
    - git.util.Iterable.iter_items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.config
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - re.compile
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - name
    - bases
    - clsdict
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 80
    functionName: git.config.MetaParserBuilder.__new__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - inspect.getmembers
    - functools.wraps
    - <builtin>.super
    - git.config.needs_values
    - git.config.set_dirty_and_flush_changes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: inspect.getmembers
    functionSourceFile: inspect
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: git.config.needs_values
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - non_const_func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 120
    functionName: git.config.set_dirty_and_flush_changes
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 112
    functionName: git.config.needs_values.assure_data_present
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - git.config.needs_values.assure_data_present
    - git.config.set_dirty_and_flush_changes.flush_changes
    - <builtin>.super
    - gitdb.utils.encoding.force_text
    - git.config.GitConfigParser._value_to_string
    - sm._clear_cache
    - index.add
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - configparser.RawConfigParser.has_section
    - git.config.GitConfigParser.add_section
    - git.config.GitConfigParser.add_value
    - configparser.RawConfigParser.set
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - <builtin>.str
    - git.config.GitConfigParser.set_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 127
    functionName: git.config.set_dirty_and_flush_changes.flush_changes
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - git.config.needs_values.assure_data_present
    - git.config.set_dirty_and_flush_changes.flush_changes
    - <builtin>.super
    - gitdb.utils.encoding.force_text
    - git.config.GitConfigParser._value_to_string
    - sm._clear_cache
    - index.add
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - configparser.RawConfigParser.has_section
    - git.config.GitConfigParser.add_section
    - git.config.GitConfigParser.add_value
    - configparser.RawConfigParser.set
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - <builtin>.str
    - git.config.GitConfigParser.set_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 113
    functionName: git.objects.submodule.util.SubmoduleConfigParser.write
    functionSourceFile: git.objects.submodule.util
    functionUses: 8
    functionsReached:
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - option
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 893
    functionName: git.config.GitConfigParser.add_value
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - gitdb.utils.encoding.force_text
    - <builtin>.super
    - git.config.GitConfigParser._value_to_string
    - <builtin>.isinstance
    - configparser.RawConfigParser.has_section
    - git.config.GitConfigParser.add_section
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - option
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 868
    functionName: git.config.GitConfigParser.set_value
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - gitdb.utils.encoding.force_text
    - <builtin>.super
    - git.config.GitConfigParser._value_to_string
    - <builtin>.isinstance
    - configparser.RawConfigParser.has_section
    - git.config.GitConfigParser.add_section
    - configparser.RawConfigParser.set
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - config
    - section
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 164
    functionName: git.config.SectionConstraint.__init__
    functionSourceFile: git.config
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 168
    functionName: git.config.SectionConstraint.__del__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - git.config.GitConfigParser.release
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - _logger.error
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 410
    functionName: git.config.GitConfigParser.release
    functionSourceFile: git.config
    functionUses: 5
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - _logger.error
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 174
    functionName: git.config.SectionConstraint.__getattr__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: git.config.SectionConstraint.__getattr__.<lambda1>
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - git.config.SectionConstraint._call_config
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 179
    functionName: git.config.SectionConstraint._call_config
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 185
    functionName: git.config.SectionConstraint.config
    functionSourceFile: git.config
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 189
    functionName: git.config.SectionConstraint.release
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - git.config.GitConfigParser.release
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - _logger.error
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 194
    functionName: git.config.SectionConstraint.__enter__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - git.util.LockFile.__init__
    - git.util.LockFile._obtain_lock
    - os.path.isfile
    - <builtin>.open
    - git.util.LockFile._obtain_lock_or_raise
    - <builtin>.isinstance
    - git.util.LockFile._lock_file_path
    - git.config.GitConfigParser.__enter__
    - git.config.GitConfigParser._acquire_lock
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 403
    functionName: git.config.GitConfigParser.__enter__
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - git.util.LockFile.__init__
    - git.util.LockFile._obtain_lock
    - os.path.isfile
    - <builtin>.open
    - git.util.LockFile._obtain_lock_or_raise
    - <builtin>.isinstance
    - git.util.LockFile._lock_file_path
    - git.config.GitConfigParser._acquire_lock
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exception_type
    - exception_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 198
    functionName: git.config.SectionConstraint.__exit__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - git.config.GitConfigParser.release
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - git.config.GitConfigParser.__exit__
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - _logger.error
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 407
    functionName: git.config.GitConfigParser.__exit__
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - git.config.GitConfigParser.release
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - _logger.error
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 205
    functionName: git.config._OMD.__setitem__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 208
    functionName: git.config._OMD.add
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - values
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 215
    functionName: git.config._OMD.setall
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 218
    functionName: git.config._OMD.__getitem__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 221
    functionName: git.config._OMD.getlast
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 224
    functionName: git.config._OMD.setlast
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b43a1f0>
    argNames:
    - self
    - key
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 232
    functionName: git.config._OMD.get
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 235
    functionName: git.config._OMD.getall
    functionSourceFile: git.config
    functionUses: 3
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 238
    functionName: git.config._OMD.items
    functionSourceFile: git.config
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 242
    functionName: git.config._OMD.items_all
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - git.config._OMD.getall
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - config_level
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 247
    functionName: git.config.get_config_path
    functionSourceFile: git.config
    functionUses: 39
    functionsReached:
    - git.types.assert_never
    - os.path.expanduser
    - os.path.normpath
    - os.environ.get
    - <builtin>.ValueError
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: git.config.GitConfigParser
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - functools.wraps
    - git.config.needs_values
    - re.compile
    - git.config.set_dirty_and_flush_changes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.__init__
    functionSourceFile: configparser
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser._dict
    functionSourceFile: configparser
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 378
    functionName: git.config.GitConfigParser._acquire_lock
    functionSourceFile: git.config
    functionUses: 41
    functionsReached:
    - git.util.LockFile.__init__
    - git.util.LockFile._obtain_lock
    - os.path.isfile
    - <builtin>.open
    - <builtin>.isinstance
    - git.util.LockFile._lock_file_path
    - git.util.LockFile._obtain_lock_or_raise
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 398
    functionName: git.config.GitConfigParser.__del__
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - os.chmod
    - git.util.LockFile._release_lock
    - git.config.GitConfigParser.release
    - <builtin>.super
    - sm._clear_cache
    - index.add
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    - <builtin>.isinstance
    - os.remove
    - git.util.LockFile._lock_file_path
    - git.util.rmfile
    - git.objects.submodule.util.SubmoduleConfigParser.write
    - _logger.error
    - git.util.LockFile._has_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - optionstr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 435
    functionName: git.config.GitConfigParser.optionxform
    functionSourceFile: git.config
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 25
    ICount: 4
    IfCount: 17
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - fp
    - fpname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 439
    functionName: git.config.GitConfigParser._read
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - typing.cast.head.commit.readline
    - optname.rstrip
    - typing.BinaryIO.tree.readline
    - typing.IO.readline
    - datetime.timedelta.tree.readline
    - optval.strip
    - configparser.ParsingError
    - e.append
    - v.endswith
    - typing.cast.object.tree.readline
    - line.split
    - typing.cast.object.head.commit.tree.readline
    - git.cmd.Popen.tree.readline
    - typing.cast.head.commit.tree.readline
    - configparser.RawConfigParser._defaults.add
    - v.encode
    - typing.cast.tree.head.commit.readline
    - optval.find
    - line.endswith
    - typing.cast.object.readline
    - git.cmd.Popen.readline
    - typing.IO.tree.readline
    - configparser.RawConfigParser._defaults.getlast
    - subprocess.Popen.readline
    - subprocess.Popen.tree.readline
    - typing.BinaryIO.readline
    - line.strip
    - typing.cast.tree.object.head.commit.readline
    - git.config.GitConfigParser.optionxform
    - typing.cast.object.head.commit.readline
    - typing.cast.tree.object.readline
    - datetime.timedelta.readline
    - git.config.GitConfigParser._read.string_decode
    - configparser.RawConfigParser.SECTCRE.match
    - configparser.RawConfigParser._defaults.setlast
    - <builtin>.len
    - <builtin>.repr
    - line.rstrip
    - configparser.RawConfigParser._dict
    - mo.group
    - typing.cast.tree.readline
    - typing.cast.readline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - v
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 454
    functionName: git.config.GitConfigParser._read.string_decode
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - v.endswith
    - v.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: v.endswith
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: v.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.readline
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.readline
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.readline
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.readline
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.readline
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.readline
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.readline
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.readline
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.readline
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.readline
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.readline
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.readline
    functionSourceFile: typing
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.strip
    functionSourceFile: <builtin>
    functionUses: 50
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.SECTCRE.match
    functionSourceFile: configparser
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: mo.group
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: optval.strip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: optval.find
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: optname.rstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser._defaults.add
    functionSourceFile: configparser
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.ParsingError
    functionSourceFile: configparser
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.repr
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: e.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.rstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.endswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser._defaults.getlast
    functionSourceFile: configparser
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser._defaults.setlast
    functionSourceFile: configparser
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 536
    functionName: git.config.GitConfigParser._has_includes
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - git.config.GitConfigParser._included_paths
    - value.endswith
    - <builtin>.super
    - CONDITIONAL_INCLUDE_REGEXP.search
    - os.path.expanduser
    - re.sub
    - value.startswith
    - configparser.RawConfigParser.sections
    - fnmatch.fnmatchcase
    - git.config.GitConfigParser.items
    - match.group
    - <builtin>.any
    - <builtin>.len
    - <builtin>.str
    - keyword.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 539
    functionName: git.config.GitConfigParser._included_paths
    functionSourceFile: git.config
    functionUses: 3
    functionsReached:
    - value.endswith
    - <builtin>.super
    - CONDITIONAL_INCLUDE_REGEXP.search
    - os.path.expanduser
    - re.sub
    - value.startswith
    - configparser.RawConfigParser.sections
    - fnmatch.fnmatchcase
    - git.config.GitConfigParser.items
    - match.group
    - <builtin>.any
    - <builtin>.str
    - keyword.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.sections
    functionSourceFile: configparser
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 690
    functionName: git.config.GitConfigParser.items
    functionSourceFile: git.config
    functionUses: 4
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CONDITIONAL_INCLUDE_REGEXP.search
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.startswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.endswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keyword.endswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.config.GitConfigParser._included_paths.<lambda1>
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - m.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.sub
    functionSourceFile: re
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fnmatch.fnmatchcase
    functionSourceFile: fnmatch
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 5
    IfCount: 10
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 589
    functionName: git.config.GitConfigParser.read
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - files_to_read.pop
    - value.endswith
    - os.path.dirname
    - typing.cast.head.commit.readline
    - optname.rstrip
    - typing.BinaryIO.tree.readline
    - <builtin>.super
    - typing.IO.readline
    - os.path.expanduser
    - <builtin>.list
    - <builtin>.open
    - seen.add
    - datetime.timedelta.tree.readline
    - optval.strip
    - configparser.ParsingError
    - e.append
    - v.endswith
    - git.config.GitConfigParser.items
    - typing.cast.object.tree.readline
    - line.split
    - git.config.GitConfigParser._read
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - git.cmd.Popen.tree.readline
    - typing.cast.head.commit.tree.readline
    - configparser.RawConfigParser._defaults.add
    - os.access
    - v.encode
    - typing.cast.tree.head.commit.readline
    - optval.find
    - value.startswith
    - line.endswith
    - fnmatch.fnmatchcase
    - typing.cast.object.readline
    - git.cmd.Popen.readline
    - typing.IO.tree.readline
    - git.config.GitConfigParser._has_includes
    - configparser.RawConfigParser._defaults.getlast
    - subprocess.Popen.readline
    - subprocess.Popen.tree.readline
    - typing.BinaryIO.readline
    - line.strip
    - typing.cast.tree.object.head.commit.readline
    - git.config.GitConfigParser.optionxform
    - CONDITIONAL_INCLUDE_REGEXP.search
    - typing.cast.object.head.commit.readline
    - files_to_read.insert
    - typing.cast
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - datetime.timedelta.readline
    - git.config.GitConfigParser._read.string_decode
    - configparser.RawConfigParser.SECTCRE.match
    - configparser.RawConfigParser._defaults.setlast
    - <builtin>.len
    - match.group
    - os.path.join
    - <builtin>.hasattr
    - <builtin>.repr
    - git.config.GitConfigParser._included_paths
    - line.rstrip
    - configparser.RawConfigParser._dict
    - re.sub
    - <builtin>.isinstance
    - os.path.normpath
    - mo.group
    - include_path.startswith
    - os.path.isabs
    - typing.cast.tree.readline
    - <builtin>.set
    - typing.cast.readline
    - keyword.endswith
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: files_to_read.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: include_path.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: seen.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: files_to_read.insert
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 664
    functionName: git.config.GitConfigParser._write
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - typing.cast.tree.write
    - <builtin>.str
    - typing.BinaryIO.write
    - typing.cast.head.commit.write
    - typing.BinaryIO.tree.write
    - typing.cast.tree.object.head.commit.write
    - typing.cast.head.commit.tree.write
    - typing.cast.write
    - configparser.RawConfigParser._defaults.items_all
    - typing.cast.tree.head.commit.write
    - git.cmd.Popen.tree.write
    - typing.IO.write
    - gitdb.utils.encoding.force_text.replace
    - datetime.timedelta.write
    - typing.cast.object.head.commit.tree.write
    - typing.cast.tree.object.write
    - typing.cast.object.write
    - typing.IO.tree.write
    - typing.cast.object.tree.write
    - git.config.GitConfigParser._write.write_section
    - git.cmd.Popen.write
    - typing.cast.object.head.commit.write
    - gitdb.utils.encoding.force_text
    - git.config.GitConfigParser._value_to_string
    - subprocess.Popen.tree.write
    - <builtin>.isinstance
    - subprocess.Popen.write
    - datetime.timedelta.tree.write
    - configparser.RawConfigParser._sections.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - section_dict
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 668
    functionName: git.config.GitConfigParser._write.write_section
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - typing.cast.tree.write
    - <builtin>.str
    - typing.BinaryIO.write
    - typing.cast.head.commit.write
    - typing.BinaryIO.tree.write
    - typing.cast.tree.object.head.commit.write
    - typing.cast.head.commit.tree.write
    - typing.cast.write
    - configparser.RawConfigParser._defaults.items_all
    - typing.cast.tree.head.commit.write
    - git.cmd.Popen.tree.write
    - typing.IO.write
    - gitdb.utils.encoding.force_text.replace
    - datetime.timedelta.write
    - typing.cast.object.head.commit.tree.write
    - typing.cast.tree.object.write
    - typing.cast.object.write
    - typing.IO.tree.write
    - typing.cast.object.tree.write
    - git.cmd.Popen.write
    - typing.cast.object.head.commit.write
    - gitdb.utils.encoding.force_text
    - git.config.GitConfigParser._value_to_string
    - subprocess.Popen.tree.write
    - <builtin>.isinstance
    - subprocess.Popen.write
    - datetime.timedelta.tree.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.write
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.write
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.write
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.write
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.write
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.write
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.write
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser._defaults.items_all
    functionSourceFile: configparser
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 861
    functionName: git.config.GitConfigParser._value_to_string
    functionSourceFile: git.config
    functionUses: 7
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    - gitdb.utils.encoding.force_text
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.utils.encoding.force_text.replace
    functionSourceFile: gitdb
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser._sections.items
    functionSourceFile: configparser
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 694
    functionName: git.config.GitConfigParser.items_all
    functionSourceFile: git.config
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - git.config._OMD.add
    - git.config._OMD.getall
    - git.config.OrderedDict.__init__
    - git.config._OMD.items_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.config.OrderedDict.__init__
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 8
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 711
    functionName: git.config.GitConfigParser.write
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - value.endswith
    - typing.cast.tree.write
    - <builtin>.open
    - typing.IO.seek
    - typing.cast.tree.truncate
    - typing.cast.object.tree.truncate
    - configparser.RawConfigParser._sections.items
    - typing.cast.object.head.commit.tree.seek
    - typing.cast.write
    - value.startswith
    - typing.cast.tree.head.commit.truncate
    - git.config.GitConfigParser._has_includes
    - datetime.timedelta.write
    - typing.cast.object.write
    - typing.BinaryIO.truncate
    - git.util.LockFile._lock_file_path
    - typing.cast.seek
    - git.cmd.Popen.seek
    - git.config.GitConfigParser._write.write_section
    - git.cmd.Popen.tree.truncate
    - git.config.GitConfigParser._included_paths
    - typing.cast.object.head.commit.write
    - git.config.GitConfigParser._assure_writable
    - subprocess.Popen.tree.write
    - re.sub
    - <builtin>.isinstance
    - typing.cast.tree.seek
    - typing.IO.truncate
    - typing.cast.head.commit.seek
    - <builtin>.super
    - datetime.timedelta.tree.seek
    - git.config.GitConfigParser.items
    - datetime.timedelta.truncate
    - fnmatch.fnmatchcase
    - git.cmd.Popen.tree.write
    - gitdb.utils.encoding.force_text.replace
    - typing.cast.object.head.commit.tree.write
    - typing.cast.tree.object.write
    - typing.cast.head.commit.tree.truncate
    - configparser.RawConfigParser.sections
    - typing.IO.tree.write
    - typing.cast.object.tree.write
    - typing.BinaryIO.tree.truncate
    - match.group
    - git.util.LockFile._has_lock
    - datetime.timedelta.tree.truncate
    - git.util.LockFile._obtain_lock
    - typing.cast.object.head.commit.truncate
    - datetime.timedelta.tree.write
    - git.cmd.Popen.tree.seek
    - typing.cast.object.truncate
    - typing.BinaryIO.write
    - subprocess.Popen.tree.seek
    - typing.cast.tree.head.commit.seek
    - typing.cast.head.commit.write
    - typing.cast.head.commit.truncate
    - typing.BinaryIO.tree.write
    - typing.cast.tree.object.head.commit.write
    - configparser.RawConfigParser._defaults.items_all
    - typing.cast.head.commit.tree.seek
    - typing.cast.tree.object.seek
    - typing.IO.tree.seek
    - subprocess.Popen.seek
    - CONDITIONAL_INCLUDE_REGEXP.search
    - os.path.isfile
    - typing.cast
    - typing.BinaryIO.seek
    - <builtin>.len
    - gitdb.utils.encoding.force_text
    - typing.cast.object.head.commit.tree.truncate
    - typing.BinaryIO.tree.seek
    - subprocess.Popen.write
    - typing.cast.tree.object.truncate
    - <builtin>.any
    - typing.cast.truncate
    - typing.cast.object.seek
    - os.path.expanduser
    - git.config.GitConfigParser._write
    - subprocess.Popen.tree.truncate
    - <builtin>.str
    - subprocess.Popen.truncate
    - typing.cast.head.commit.tree.write
    - typing.cast.tree.head.commit.write
    - typing.cast.object.head.commit.seek
    - typing.IO.write
    - typing.IO.tree.truncate
    - typing.cast.tree.object.head.commit.seek
    - git.cmd.Popen.write
    - <builtin>.hasattr
    - keyword.endswith
    - git.config.GitConfigParser._value_to_string
    - datetime.timedelta.seek
    - typing.cast.tree.object.head.commit.truncate
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.tree.seek
    - git.cmd.Popen.truncate
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - method_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 756
    functionName: git.config.GitConfigParser._assure_writable
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - IOError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.seek
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.seek
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.seek
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.seek
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.seek
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.seek
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.seek
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.truncate
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.truncate
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.truncate
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.truncate
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.truncate
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.truncate
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.truncate
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 760
    functionName: git.config.GitConfigParser.add_section
    functionSourceFile: git.config
    functionUses: 4
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 765
    functionName: git.config.GitConfigParser.read_only
    functionSourceFile: git.config
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b8b3910>
    argNames:
    - self
    - section
    - option
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 770
    functionName: git.config.GitConfigParser.get_value
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - configparser.RawConfigParser.get
    - <builtin>.isinstance
    - valuestr.lower
    - git.config.GitConfigParser._string_to_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - valuestr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 833
    functionName: git.config.GitConfigParser._string_to_value
    functionSourceFile: git.config
    functionUses: 2
    functionsReached:
    - valuestr.lower
    - <builtin>.float
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5af7b640>
    argNames:
    - self
    - section
    - option
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 801
    functionName: git.config.GitConfigParser.get_values
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - <builtin>.isinstance
    - configparser.RawConfigParser.sections
    - valuestr.lower
    - git.config.GitConfigParser._string_to_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: valuestr.lower
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.utils.encoding.force_text
    functionSourceFile: gitdb
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.has_section
    functionSourceFile: configparser
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.set
    functionSourceFile: configparser
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - new_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 918
    functionName: git.config.GitConfigParser.rename_section
    functionSourceFile: git.config
    functionUses: 0
    functionsReached:
    - git.config.GitConfigParser.items_all
    - <builtin>.super
    - git.config._OMD.add
    - configparser.RawConfigParser.has_section
    - git.config._OMD.getall
    - git.config.OrderedDict.__init__
    - configparser.RawConfigParser.remove_section
    - new_section.setall
    - git.config._OMD.items_all
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: new_section.setall
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.remove_section
    functionSourceFile: configparser
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.compat
    functionSourceFile: git.compat
    functionUses: 0
    functionsReached:
    - typing.overload
    - sys.getfilesystemencoding
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: git.compat._getattr
    functionSourceFile: git.compat
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: git.compat.__dir__
    functionSourceFile: git.compat
    functionUses: 0
    functionsReached:
    - <builtin>.globals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.getfilesystemencoding
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.decode
    functionSourceFile: <builtin>
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 137
    functionName: git.compat.safe_encode
    functionSourceFile: git.compat
    functionUses: 0
    functionsReached:
    - s.encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 157
    functionName: git.compat.win_encode
    functionSourceFile: git.compat
    functionUses: 0
    functionsReached:
    - locale.getpreferredencoding
    - s.encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locale.getpreferredencoding
    functionSourceFile: locale
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.remote
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - typing.overload
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.callable
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.remote.PushInfo
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b71b6a0>
    - <ast.Constant object at 0x7fab5b3480a0>
    argNames:
    - self
    - flags
    - local_ref
    - remote_ref_string
    - remote
    - old_commit
    - summary
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 169
    functionName: git.remote.PushInfo.__init__
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 190
    functionName: git.remote.PushInfo.old_commit
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 194
    functionName: git.remote.PushInfo.remote_ref
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - remote
    - line
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 215
    functionName: git.remote.PushInfo._from_line
    functionSourceFile: git.remote
    functionUses: 1
    functionsReached:
    - git.remote.PushInfo.__init__
    - from_to.split
    - summary.split
    - Reference.from_path
    - line.split
    - summary.startswith
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: from_to.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Reference.from_path
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: summary.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: summary.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: git.remote.PushInfoList.__new__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast
    - git.util.IterableList.__new__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 278
    functionName: git.remote.PushInfoList.__init__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 282
    functionName: git.remote.PushInfoList.raise_if_error
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.remote.FetchInfo
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextlib.suppress
    functionSourceFile: contextlib
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ae9f9d0>
    - <ast.Constant object at 0x7fab5ae9f760>
    - <ast.Constant object at 0x7fab5ae9f580>
    argNames:
    - self
    - ref
    - flags
    - note
    - old_commit
    - remote_ref_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 351
    functionName: git.remote.FetchInfo.__init__
    functionSourceFile: git.remote
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 366
    functionName: git.remote.FetchInfo.__str__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 370
    functionName: git.remote.FetchInfo.name
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 375
    functionName: git.remote.FetchInfo.commit
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 1
    IfCount: 15
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - line
    - fetch_line
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 380
    functionName: git.remote.FetchInfo._from_line
    functionSourceFile: git.remote
    functionUses: 3
    functionsReached:
    - git.remote.FetchInfo.__init__
    - git.util.join_path
    - b.startswith
    - fetch_line.split
    - cls._re_fetch_result.match
    - match.groups
    - typing.cast
    - note.strip
    - fetch_note.split
    - path.endswith
    - operation.split
    - remote_local_ref_str.strip
    - remote_local_ref_str.startswith
    - repo.rev_parse
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls._re_fetch_result.match
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fetch_line.split
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fetch_note.split
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: operation.split
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: remote_local_ref_str.strip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: remote_local_ref_str.startswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: note.strip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 567
    functionName: git.remote.Remote.__getattr__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 581
    functionName: git.remote.Remote._config_section_name
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 584
    functionName: git.remote.Remote._set_cache_
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - git.util.LockFile.__init__
    - <builtin>.super
    - os.path.expanduser
    - <builtin>.open
    - os.environ.get
    - git.repo.base.Repo._config_reader
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.base.Repo._get_config_path
    - <builtin>.ValueError
    - git.config.SectionConstraint.__init__
    - git.remote.Remote._config_section_name
    - configparser.RawConfigParser.__init__
    - git.repo.base.Repo.config_reader
    - os.path.isfile
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - os.path.join
    - <builtin>.hasattr
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - git.config.GitConfigParser._acquire_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 595
    functionName: git.remote.Remote.__str__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 598
    functionName: git.remote.Remote.__repr__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 601
    functionName: git.remote.Remote.__eq__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - <builtin>.type
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 604
    functionName: git.remote.Remote.__ne__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 607
    functionName: git.remote.Remote.__hash__
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.config_reader
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: section.startswith
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: section.find
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: section.rfind
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aeb4280>
    - <ast.Constant object at 0x7fab5aeb4e20>
    argNames:
    - self
    - new_url
    - old_url
    - allow_unsafe_protocols
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 638
    functionName: git.remote.Remote.set_url
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached:
    - typing.cast.remote
    - git.cmd.Git.check_unsafe_protocols
    - match.group
    - cls.re_unsafe_protocol.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.remote
    functionSourceFile: typing
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b619040>
    argNames:
    - self
    - url
    - allow_unsafe_protocols
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 667
    functionName: git.remote.Remote.add_url
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - git.cmd.Git.check_unsafe_protocols
    - git.remote.Remote.set_url
    - match.group
    - cls.re_unsafe_protocol.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - url
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 684
    functionName: git.remote.Remote.delete_url
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - git.cmd.Git.check_unsafe_protocols
    - git.remote.Remote.set_url
    - match.group
    - cls.re_unsafe_protocol.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 699
    functionName: git.remote.Remote.urls
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - typing.cast.config
    - <builtin>.isinstance
    - remote_details.split
    - line.split
    - <builtin>.any
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: remote_details.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.config
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 732
    functionName: git.remote.Remote.refs
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - RemoteReference.list_items
    - out_refs.extend
    - git.util.IterableList.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: RemoteReference.list_items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out_refs.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 747
    functionName: git.remote.Remote.stale_refs
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - line.replace
    - git.util.IterableList.__init__
    - ref_name.startswith
    - line.startswith
    - Reference.from_path
    - out_refs.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ref_name.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out_refs.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - name
    - url
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 816
    functionName: git.remote.Remote.add
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - os.path.dirname
    - os.path.expanduser
    - git.util._get_exe_extensions
    - regex.match
    - os.environ.get
    - fpath.upper
    - <builtin>.str
    - url.startswith
    - folder.strip
    - cls.re_unsafe_protocol.match
    - typing.cast.remote
    - subprocess.Popen
    - os.access
    - url.replace
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Git.polish_url
    - progs.append
    - PATHEXT.split
    - path.startswith
    - p.upper
    - git.remote.Remote.__init__
    - os.path.expandvars
    - os.path.isfile
    - <builtin>.tuple
    - git.util._is_cygwin_git
    - os.path.join
    - git.remote.Remote.create
    - git.util.py_where.is_exec
    - git.util.cygpath
    - git.util.py_where
    - match.groups
    - git.cmd.Git.is_cygwin
    - _is_cygwin_cache.get
    - process.communicate
    - git.util.is_cygwin_git
    - _logger.debug
    - match.group
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name._clear_cache
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 832
    functionName: git.remote.Remote.rm
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - name._clear_cache
    - <builtin>.isinstance
    - git.remote.Remote.remove
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - new_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 841
    functionName: git.remote.Remote.rename
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    - git.remote.Remote._clear_cache
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1222
    functionName: git.remote.Remote._clear_cache
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 856
    functionName: git.remote.Remote.update
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.remote
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 10
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ac69460>
    argNames:
    - self
    - proc
    - progress
    - kill_after_timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 872
    functionName: git.remote.Remote._get_fetch_info_from_stderr
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - <builtin>.open
    - datetime.timedelta.tree.rstrip
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen._terminate
    - subprocess.Popen.stdout.close
    - typing.cast.object.head.commit.encode
    - typing.cast.tree.stdin.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.stderr.close
    - typing.cast.object.tree.poll
    - threading.Thread
    - _logger.warning
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - subprocess.Popen.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - fetch_line.split
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - fetch_info_lines.append
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - proc.wait
    - repo.rev_parse
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - <builtin>.set
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.rstrip
    - typing.cast.object.head.commit.tree.encode
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.object.head.commit.poll
    - git.remote.FetchInfo.__init__
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - <builtin>.super
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - <builtin>.callable
    - typing.IO.wait
    - b.startswith
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - gitdb.utils.encoding.force_text.decode
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - path.endswith
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing_extensions.Protocol._flag_map.keys
    - typing.cast.head.commit.stdout.close
    - git.util.join_path
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - operation.split
    - git.types.Protocol._flag_map.keys
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - git.util.IterableList.__init__
    - typing.BinaryIO.stdin.close
    - fetch_note.split
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.Protocol._flag_map.keys
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - gitdb.utils.encoding.force_text
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - <builtin>.zip
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - fp.readlines
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - <builtin>.str
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - output.append
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - cls._re_fetch_result.match
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - git.remote.FetchInfo._from_line
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - remote_local_ref_str.startswith
    - note.strip
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - remote_local_ref_str.strip
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - err_line.strip
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.Protocol._flag_map.keys
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.types.Protocol._flag_map.keys
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing_extensions.Protocol._flag_map.keys
    functionSourceFile: typing_extensions
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fetch_info_lines.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.utils.encoding.force_text.decode
    functionSourceFile: gitdb
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.readlines
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: output.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: err_line.strip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad5a3d0>
    argNames:
    - self
    - proc
    - progress
    - kill_after_timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 943
    functionName: git.remote.Remote._get_push_info
    functionSourceFile: git.remote
    functionUses: 1
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - datetime.timedelta.tree.rstrip
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen._terminate
    - typing.cast.tree.stdin.close
    - typing.cast.object.head.commit.encode
    - typing.cast.stderr.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.object.tree.poll
    - threading.Thread
    - _logger.warning
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - proc.wait
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.object.head.commit.tree.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - <builtin>.super
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - <builtin>.callable
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - git.cmd.Popen
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - git.remote.to_progress_instance
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - line
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 958
    functionName: git.remote.Remote._get_push_info.stdout_handler
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - output.append
    - git.remote.PushInfo.__init__
    - from_to.split
    - summary.split
    - Reference.from_path
    - line.split
    - summary.startswith
    - git.remote.PushInfo._from_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 987
    functionName: git.remote.Remote._assert_refspec
    functionSourceFile: git.remote
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fab5af0e9d0>
    - <ast.Constant object at 0x7fab5af0e940>
    - <ast.Constant object at 0x7fab5af0e430>
    - <ast.Constant object at 0x7fab5af0e8e0>
    - <ast.Constant object at 0x7fab5af0ebb0>
    - <ast.Constant object at 0x7fab5af0e250>
    argNames:
    - self
    - refspec
    - progress
    - verbose
    - kill_after_timeout
    - allow_unsafe_protocols
    - allow_unsafe_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1000
    functionName: git.remote.Remote.fetch
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - <builtin>.list
    - <builtin>.open
    - datetime.timedelta.tree.rstrip
    - subprocess.Popen._terminate
    - datetime.timedelta.tree.stderr.read
    - typing.cast.object.head.commit.encode
    - subprocess.Popen.stdout.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.stderr.close
    - option.startswith
    - typing.cast.object.tree.poll
    - threading.Thread
    - _logger.warning
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - subprocess.Popen.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.fetch
    - typing.cast.tree._terminate
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - fetch_line.split
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - fetch_info_lines.append
    - git.remote.Remote._assert_refspec
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - proc.wait
    - git.remote.Remote._get_fetch_info_from_stderr
    - repo.rev_parse
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - <builtin>.set
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.rstrip
    - typing.cast.object.head.commit.tree.encode
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.object.head.commit.poll
    - git.remote.FetchInfo.__init__
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - <builtin>.super
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - <builtin>.callable
    - typing.IO.wait
    - b.startswith
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - gitdb.utils.encoding.force_text.decode
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - path.endswith
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - match.group
    - typing_extensions.Protocol._flag_map.keys
    - typing.cast.head.commit.stdout.close
    - git.util.join_path
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - operation.split
    - git.types.Protocol._flag_map.keys
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - git.util.IterableList.__init__
    - typing.BinaryIO.stdin.close
    - fetch_note.split
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.Protocol._flag_map.keys
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - git.cmd.Git.check_unsafe_options
    - gitdb.utils.encoding.force_text
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - <builtin>.zip
    - typing.BinaryIO.wait
    - typing.cast.head.commit.tree._terminate
    - subprocess.Popen.stdin.close
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - kwargs.keys
    - fp.readlines
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - <builtin>.str
    - typing.cast.object.tree.wait
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - output.append
    - git.cmd.Git.check_unsafe_protocols
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - cls._re_fetch_result.match
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - git.remote.FetchInfo._from_line
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - remote_local_ref_str.startswith
    - note.strip
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - typing.cast.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - option.lstrip
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - remote_local_ref_str.strip
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - err_line.strip
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.fetch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad0f760>
    - <ast.Constant object at 0x7fab5ad0fa90>
    - <ast.Constant object at 0x7fab5ad0f160>
    - <ast.Constant object at 0x7fab5ad0f5b0>
    - <ast.Constant object at 0x7fab5ad0f850>
    argNames:
    - self
    - refspec
    - progress
    - kill_after_timeout
    - allow_unsafe_protocols
    - allow_unsafe_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1081
    functionName: git.remote.Remote.pull
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - <builtin>.list
    - <builtin>.open
    - datetime.timedelta.tree.rstrip
    - subprocess.Popen._terminate
    - datetime.timedelta.tree.stderr.read
    - typing.cast.object.head.commit.encode
    - subprocess.Popen.stdout.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.stderr.close
    - option.startswith
    - typing.cast.object.tree.poll
    - threading.Thread
    - _logger.warning
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - subprocess.Popen.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - fetch_line.split
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - fetch_info_lines.append
    - git.remote.Remote._assert_refspec
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - proc.wait
    - git.remote.Remote._get_fetch_info_from_stderr
    - git.cmd.Git._unpack_args
    - repo.rev_parse
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - <builtin>.set
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - typing.cast.tree.object.head.commit._terminate
    - subprocess.Popen.tree.wait
    - typing.cast.object.head.commit.tree.encode
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit.poll
    - git.remote.FetchInfo.__init__
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - <builtin>.super
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - outlist.append
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - <builtin>.callable
    - typing.IO.wait
    - b.startswith
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - gitdb.utils.encoding.force_text.decode
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - path.endswith
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - match.group
    - typing_extensions.Protocol._flag_map.keys
    - typing.cast.head.commit.stdout.close
    - git.util.join_path
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - operation.split
    - git.types.Protocol._flag_map.keys
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - git.util.IterableList.__init__
    - typing.BinaryIO.stdin.close
    - fetch_note.split
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.Protocol._flag_map.keys
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - git.cmd.Git.check_unsafe_options
    - gitdb.utils.encoding.force_text
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - <builtin>.zip
    - typing.cast.pull
    - typing.BinaryIO.wait
    - typing.cast.head.commit.tree._terminate
    - subprocess.Popen.stdin.close
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - kwargs.keys
    - fp.readlines
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - <builtin>.str
    - typing.cast.object.tree.wait
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - output.append
    - git.cmd.Git.check_unsafe_protocols
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - cls._re_fetch_result.match
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - git.remote.FetchInfo._from_line
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - remote_local_ref_str.startswith
    - note.strip
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - typing.cast.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - option.lstrip
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - remote_local_ref_str.strip
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - err_line.strip
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - outlist.extend
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.pull
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b502fd0>
    - <ast.Constant object at 0x7fab5b5029a0>
    - <ast.Constant object at 0x7fab5b5028e0>
    - <ast.Constant object at 0x7fab5b502460>
    - <ast.Constant object at 0x7fab5b5021f0>
    argNames:
    - self
    - refspec
    - progress
    - kill_after_timeout
    - allow_unsafe_protocols
    - allow_unsafe_options
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1135
    functionName: git.remote.Remote.push
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - <builtin>.list
    - datetime.timedelta.tree.rstrip
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen._terminate
    - subprocess.Popen.stdout.close
    - typing.cast.object.head.commit.encode
    - typing.cast.tree.stdin.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.stderr.close
    - option.startswith
    - typing.cast.object.tree.poll
    - threading.Thread
    - _logger.warning
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - subprocess.Popen.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - typing.cast.push
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - typing.cast.object.stderr.close
    - proc.wait
    - git.cmd.Git._unpack_args
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.rstrip
    - typing.cast.encode
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.object.head.commit.tree.encode
    - subprocess.Popen.tree.wait
    - git.remote.Remote._get_push_info
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - <builtin>.super
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - outlist.append
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - <builtin>.callable
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - git.cmd.Popen
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - match.group
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - <builtin>.len
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - git.cmd.Git.check_unsafe_options
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - <builtin>.zip
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - kwargs.keys
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - <builtin>.str
    - typing.cast.object.tree.wait
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - git.cmd.Git.check_unsafe_protocols
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - typing.cast.object.stdin.close
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.BinaryIO.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - option.lstrip
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - outlist.extend
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.push
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1213
    functionName: git.remote.Remote.config_reader
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1230
    functionName: git.remote.Remote.config_writer
    functionSourceFile: git.remote
    functionUses: 0
    functionsReached:
    - git.util.LockFile.__init__
    - os.path.expanduser
    - <builtin>.open
    - os.environ.get
    - git.util.LockFile._obtain_lock_or_raise
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_writer
    - <builtin>.ValueError
    - git.remote.Remote._config_section_name
    - git.config.SectionConstraint.__init__
    - configparser.RawConfigParser.__init__
    - os.path.isfile
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - git.remote.Remote._clear_cache
    - os.path.join
    - <builtin>.hasattr
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - git.config.GitConfigParser._acquire_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs
    functionSourceFile: git.refs
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs.tag
    functionSourceFile: git.refs.tag
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 49
    functionName: git.refs.tag.TagReference.commit
    functionSourceFile: git.refs.tag
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 71
    functionName: git.refs.tag.TagReference.tag
    functionSourceFile: git.refs.tag
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 280
    functionName: git.refs.symbolic.SymbolicReference._get_object
    functionSourceFile: git.refs.symbolic
    functionUses: 15
    functionsReached:
    - git.cmd.Popen.odb.info
    - git.cmd.Popen.dereference_recursive
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.tree.repo.odb.info
    - <builtin>.super
    - typing.cast.tree.odb.info
    - datetime.timedelta.repo.odb.info
    - datetime.timedelta.odb.info
    - typing.cast.object.tree.repo.odb.info
    - typing.cast.object.head.commit.dereference_recursive
    - subprocess.Popen.odb.info
    - typing.cast.object.head.commit.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - typing.IO.odb.info
    - typing.cast.head.commit.repo.odb.info
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.repo.odb.info
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - git.cmd.Popen.repo.odb.info
    - typing.cast.dereference_recursive
    - git.objects.base.IndexObject.__init__
    - typing.cast.object.head.commit.tree.odb.info
    - typing.cast.head.commit.odb.info
    - typing.cast.tree.object.odb.info
    - typing.IO.dereference_recursive
    - datetime.timedelta.tree.dereference_recursive
    - typing.IO.tree.repo.odb.info
    - datetime.timedelta.tree.odb.info
    - typing.cast.tree.dereference_recursive
    - git.objects.tree.Tree.__init__
    - typing.cast.object.tree.odb.info
    - typing.cast.object.odb.info
    - typing.IO.repo.odb.info
    - typing.BinaryIO.tree.repo.odb.info
    - git.cmd.Popen.tree.odb.info
    - typing.cast.object.dereference_recursive
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - typing.cast.object.head.commit.tree.repo.odb.info
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.repo.odb.info
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.repo.odb.info
    - typing.BinaryIO.tree.odb.info
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - datetime.timedelta.tree.repo.odb.info
    - subprocess.Popen.tree.odb.info
    - typing.cast.head.commit.tree.odb.info
    - subprocess.Popen.tree.dereference_recursive
    - typing.IO.tree.dereference_recursive
    - subprocess.Popen.dereference_recursive
    - typing.cast.odb.info
    - typing.cast.tree.object.head.commit.odb.info
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.info
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - typing.cast.tree.object.repo.odb.info
    - gitdb.util.hex_to_bin
    - typing.cast.object.head.commit.odb.info
    - <builtin>.type
    - typing.BinaryIO.dereference_recursive
    - git.objects.tag.TagObject.__init__
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tag
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs.head
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: git.refs.head.strip_quotes
    functionSourceFile: git.refs.head
    functionUses: 1
    functionsReached:
    - string.endswith
    - string.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.endswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: git.refs.head.HEAD.orig_head
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached:
    - typing.IO
    - typing.BinaryIO
    - datetime.timedelta
    - git.cmd.Popen
    - subprocess.Popen
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ac691c0>
    - <ast.Constant object at 0x7fab5ac691f0>
    - <ast.Constant object at 0x7fab5ac69580>
    - <ast.Constant object at 0x7fab5ac69e50>
    argNames:
    - self
    - commit
    - index
    - working_tree
    - paths
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: git.refs.head.HEAD.reset
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached:
    - typing.cast.reset
    - subprocess.Popen.git.reset
    - typing.cast.tree.object.git.reset
    - typing.cast.head.commit.git.reset
    - typing.cast.tree.git.reset
    - typing.cast.tree.object.head.commit.git.reset
    - typing.IO.git.reset
    - typing.cast.tree.head.commit.git.reset
    - subprocess.Popen.tree.git.reset
    - typing.cast.object.git.reset
    - typing.cast.git.reset
    - typing.BinaryIO.git.reset
    - datetime.timedelta.git.reset
    - typing.IO.tree.git.reset
    - typing.BinaryIO.tree.git.reset
    - typing.cast.object.head.commit.git.reset
    - datetime.timedelta.tree.git.reset
    - typing.cast.head.commit.tree.git.reset
    - typing.cast.object.head.commit.tree.git.reset
    - typing.cast.object.tree.git.reset
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.git.reset
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.git.reset
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.git.reset
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.git.reset
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.git.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - heads
    - force
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: git.refs.head.Head.delete
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached:
    - typing.cast.branch
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.branch
    functionSourceFile: typing
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - remote_reference
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 164
    functionName: git.refs.head.Head.set_tracking_branch
    functionSourceFile: git.refs.head
    functionUses: 1
    functionsReached:
    - typing.IO.config_writer
    - <builtin>.open
    - typing.cast.head.commit.tree.config_writer
    - os.environ.get
    - typing.cast.config_writer
    - datetime.timedelta.tree.config_reader
    - writer.options
    - typing.BinaryIO.config_writer
    - typing.BinaryIO.tree.config_reader
    - git.repo.base.Repo._get_config_path
    - typing.IO.config_reader
    - git.refs.symbolic.SymbolicReference.to_full_path
    - git.repo.base.Repo.config_reader
    - typing.cast.tree.head.commit.config_reader
    - git.util.LockFile._lock_file_path
    - typing.IO.tree.config_reader
    - configparser.RawConfigParser._dict
    - git.refs.head.Head.config_writer
    - git.types.assert_never
    - <builtin>.isinstance
    - typing.cast.object.tree.config_reader
    - typing.BinaryIO.config_reader
    - typing.cast.tree.object.config_writer
    - typing.cast.tree.config_writer
    - typing.cast.object.head.commit.tree.config_reader
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - git.cmd.Popen.config_reader
    - typing.IO.tree.config_writer
    - typing.cast.object.config_writer
    - writer.remove_section
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - subprocess.Popen.config_reader
    - typing.cast.tree.head.commit.config_writer
    - subprocess.Popen.tree.config_writer
    - git.util.LockFile._has_lock
    - typing.cast.head.commit.tree.config_reader
    - git.util.LockFile._obtain_lock
    - typing.cast.tree.object.config_reader
    - typing.cast.config_reader
    - typing.cast.head.commit.config_reader
    - git.cmd.Popen.tree.config_writer
    - typing.cast.tree.config_reader
    - writer.remove_option
    - typing.cast.object.head.commit.tree.config_writer
    - git.repo.base.Repo.config_writer
    - os.path.isfile
    - typing.cast.object.head.commit.config_writer
    - typing.cast
    - git.config.GitConfigParser.__init__
    - typing.cast.head.commit.config_writer
    - <builtin>.len
    - os.path.join
    - os.path.normpath
    - datetime.timedelta.config_reader
    - typing.cast.object.config_reader
    - git.config.GitConfigParser._acquire_lock
    - subprocess.Popen.tree.config_reader
    - git.refs.head.Head._config_parser
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.head.commit.config_writer
    - typing.cast.tree.object.head.commit.config_reader
    - <builtin>.str
    - typing.BinaryIO.tree.config_writer
    - datetime.timedelta.config_writer
    - git.config.SectionConstraint.__init__
    - git.cmd.Popen.tree.config_reader
    - typing.cast.object.head.commit.config_reader
    - git.cmd.Popen.config_writer
    - subprocess.Popen.config_writer
    - <builtin>.hasattr
    - git.config.get_config_path
    - typing.cast.object.tree.config_writer
    - datetime.timedelta.tree.config_writer
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 296
    functionName: git.refs.head.Head.config_writer
    functionSourceFile: git.refs.head
    functionUses: 2
    functionsReached:
    - git.refs.head.Head._config_parser
    - git.cmd.Popen.tree.config_writer
    - typing.BinaryIO.config_reader
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.config_writer
    - typing.IO.config_writer
    - typing.cast.tree.object.head.commit.config_writer
    - typing.cast.tree.object.head.commit.config_reader
    - git.config.GitConfigParser._acquire_lock
    - typing.cast.head.commit.tree.config_writer
    - <builtin>.open
    - typing.cast.tree.config_writer
    - os.environ.get
    - typing.cast.object.head.commit.tree.config_reader
    - typing.cast.config_writer
    - datetime.timedelta.tree.config_reader
    - git.repo.base.Repo._config_reader
    - typing.cast.tree.config_reader
    - git.cmd.Popen.config_reader
    - typing.cast.object.head.commit.tree.config_writer
    - git.util.LockFile._obtain_lock_or_raise
    - typing.IO.tree.config_writer
    - typing.cast.object.config_writer
    - typing.BinaryIO.tree.config_writer
    - typing.BinaryIO.config_writer
    - typing.BinaryIO.tree.config_reader
    - datetime.timedelta.config_writer
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_writer
    - <builtin>.ValueError
    - git.config.SectionConstraint.__init__
    - typing.IO.config_reader
    - git.cmd.Popen.tree.config_reader
    - configparser.RawConfigParser.__init__
    - subprocess.Popen.config_reader
    - git.repo.base.Repo.config_reader
    - typing.cast.object.head.commit.config_reader
    - os.path.isfile
    - typing.cast.config_reader
    - typing.cast.object.head.commit.config_writer
    - typing.cast
    - git.cmd.Popen.config_writer
    - typing.cast.tree.head.commit.config_reader
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - subprocess.Popen.config_writer
    - typing.cast.tree.head.commit.config_writer
    - subprocess.Popen.tree.config_writer
    - typing.cast.head.commit.config_writer
    - <builtin>.hasattr
    - typing.IO.tree.config_reader
    - os.path.join
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - typing.cast.head.commit.tree.config_reader
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - datetime.timedelta.tree.config_writer
    - typing.cast.object.tree.config_reader
    - typing.cast.object.tree.config_writer
    - typing.cast.tree.object.config_reader
    - typing.cast.object.config_reader
    - datetime.timedelta.config_reader
    - typing.cast.head.commit.config_reader
    - subprocess.Popen.tree.config_reader
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: writer.remove_option
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: writer.options
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: writer.remove_section
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 597
    functionName: git.refs.symbolic.SymbolicReference.to_full_path
    functionSourceFile: git.refs.symbolic
    functionUses: 21
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 195
    functionName: git.refs.head.Head.tracking_branch
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached:
    - typing.IO.config_writer
    - <builtin>.open
    - typing.cast.head.commit.tree.config_writer
    - os.environ.get
    - typing.cast.config_writer
    - datetime.timedelta.tree.config_reader
    - string.startswith
    - typing.BinaryIO.config_writer
    - typing.BinaryIO.tree.config_reader
    - git.repo.base.Repo._get_config_path
    - typing.IO.config_reader
    - git.refs.symbolic.SymbolicReference.to_full_path
    - git.repo.base.Repo.config_reader
    - git.refs.reference.Reference.__init__
    - typing.cast.tree.head.commit.config_reader
    - git.util.LockFile._lock_file_path
    - typing.IO.tree.config_reader
    - configparser.RawConfigParser._dict
    - git.types.assert_never
    - <builtin>.isinstance
    - reader.has_option
    - typing.cast.object.tree.config_reader
    - typing.BinaryIO.config_reader
    - <builtin>.super
    - typing.cast.tree.object.config_writer
    - typing.cast.tree.config_writer
    - typing.cast.object.head.commit.tree.config_reader
    - git.repo.base.Repo._config_reader
    - git.cmd.Popen.config_reader
    - b.startswith
    - typing.IO.tree.config_writer
    - typing.cast.object.config_writer
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - subprocess.Popen.config_reader
    - path.endswith
    - typing.cast.tree.head.commit.config_writer
    - subprocess.Popen.tree.config_writer
    - git.util.LockFile._has_lock
    - typing.cast.head.commit.tree.config_reader
    - git.util.LockFile._obtain_lock
    - git.util.join_path
    - typing.cast.tree.object.config_reader
    - typing.cast.config_reader
    - typing.cast.head.commit.config_reader
    - git.cmd.Popen.tree.config_writer
    - git.refs.head.strip_quotes
    - typing.cast.tree.config_reader
    - typing.cast.object.head.commit.tree.config_writer
    - git.refs.head.Head.config_reader
    - git.repo.base.Repo.config_writer
    - os.path.isfile
    - typing.cast.object.head.commit.config_writer
    - typing.cast
    - git.config.GitConfigParser.__init__
    - typing.cast.head.commit.config_writer
    - os.path.join
    - string.endswith
    - os.path.normpath
    - datetime.timedelta.config_reader
    - typing.cast.object.config_reader
    - git.config.GitConfigParser._acquire_lock
    - subprocess.Popen.tree.config_reader
    - git.refs.head.Head._config_parser
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.head.commit.config_writer
    - typing.cast.tree.object.head.commit.config_reader
    - <builtin>.str
    - typing.BinaryIO.tree.config_writer
    - datetime.timedelta.config_writer
    - git.config.SectionConstraint.__init__
    - git.cmd.Popen.tree.config_reader
    - typing.cast.object.head.commit.config_reader
    - git.cmd.Popen.config_writer
    - subprocess.Popen.config_writer
    - <builtin>.hasattr
    - git.config.get_config_path
    - typing.cast.object.tree.config_writer
    - datetime.timedelta.tree.config_writer
    - git.util.LockFile._obtain_lock_or_raise
    - reader.get_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 288
    functionName: git.refs.head.Head.config_reader
    functionSourceFile: git.refs.head
    functionUses: 1
    functionsReached:
    - git.refs.head.Head._config_parser
    - git.cmd.Popen.tree.config_writer
    - typing.BinaryIO.config_reader
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.config_writer
    - typing.IO.config_writer
    - typing.cast.tree.object.head.commit.config_writer
    - typing.cast.tree.object.head.commit.config_reader
    - git.config.GitConfigParser._acquire_lock
    - typing.cast.head.commit.tree.config_writer
    - <builtin>.open
    - typing.cast.tree.config_writer
    - os.environ.get
    - typing.cast.object.head.commit.tree.config_reader
    - typing.cast.config_writer
    - datetime.timedelta.tree.config_reader
    - git.repo.base.Repo._config_reader
    - typing.cast.tree.config_reader
    - git.cmd.Popen.config_reader
    - typing.cast.object.head.commit.tree.config_writer
    - git.util.LockFile._obtain_lock_or_raise
    - typing.IO.tree.config_writer
    - typing.cast.object.config_writer
    - typing.BinaryIO.tree.config_writer
    - typing.BinaryIO.config_writer
    - typing.BinaryIO.tree.config_reader
    - datetime.timedelta.config_writer
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_writer
    - <builtin>.ValueError
    - git.config.SectionConstraint.__init__
    - typing.IO.config_reader
    - git.cmd.Popen.tree.config_reader
    - configparser.RawConfigParser.__init__
    - subprocess.Popen.config_reader
    - git.repo.base.Repo.config_reader
    - typing.cast.object.head.commit.config_reader
    - os.path.isfile
    - typing.cast.config_reader
    - typing.cast.object.head.commit.config_writer
    - typing.cast
    - git.cmd.Popen.config_writer
    - typing.cast.tree.head.commit.config_reader
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - subprocess.Popen.config_writer
    - typing.cast.tree.head.commit.config_writer
    - subprocess.Popen.tree.config_writer
    - typing.cast.head.commit.config_writer
    - <builtin>.hasattr
    - typing.IO.tree.config_reader
    - os.path.join
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - typing.cast.head.commit.tree.config_reader
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - datetime.timedelta.tree.config_writer
    - typing.cast.object.tree.config_reader
    - typing.cast.object.tree.config_writer
    - typing.cast.tree.object.config_reader
    - typing.cast.object.config_reader
    - datetime.timedelta.config_reader
    - typing.cast.head.commit.config_reader
    - subprocess.Popen.tree.config_reader
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: reader.has_option
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: reader.get_value
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b49e0d0>
    argNames:
    - self
    - new_path
    - force
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 216
    functionName: git.refs.head.Head.rename
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached:
    - typing.cast.tree.head.commit.git.branch
    - typing.IO.tree.git.branch
    - typing.cast.object.tree.git.branch
    - typing.cast.object.git.branch
    - typing.cast.tree.object.git.branch
    - typing.cast.tree.git.branch
    - typing.cast.branch
    - typing.cast.head.commit.tree.git.branch
    - typing.cast.object.head.commit.tree.git.branch
    - datetime.timedelta.git.branch
    - datetime.timedelta.tree.git.branch
    - typing.cast.head.commit.git.branch
    - typing.cast.object.head.commit.git.branch
    - typing.BinaryIO.git.branch
    - subprocess.Popen.git.branch
    - typing.cast.git.branch
    - typing.IO.git.branch
    - typing.BinaryIO.tree.git.branch
    - typing.cast.tree.object.head.commit.git.branch
    - subprocess.Popen.tree.git.branch
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.git.branch
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.git.branch
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.git.branch
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.git.branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.git.branch
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b2c53d0>
    argNames:
    - self
    - force
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 241
    functionName: git.refs.head.Head.checkout
    functionSourceFile: git.refs.head
    functionUses: 0
    functionsReached:
    - subprocess.Popen.tree.git.checkout
    - datetime.timedelta.tree.git.checkout
    - typing.cast.tree.git.checkout
    - typing.cast.object.head.commit.git.checkout
    - kwargs.pop
    - typing.cast.object.head.commit.tree.git.checkout
    - typing.cast.tree.object.git.checkout
    - typing.cast.tree.object.head.commit.git.checkout
    - typing.cast.object.git.checkout
    - typing.IO.git.checkout
    - typing.BinaryIO.git.checkout
    - typing.cast.checkout
    - typing.cast.git.checkout
    - typing.cast.head.commit.tree.git.checkout
    - typing.cast.head.commit.git.checkout
    - typing.cast.object.tree.git.checkout
    - typing.cast.tree.head.commit.git.checkout
    - datetime.timedelta.git.checkout
    - typing.BinaryIO.tree.git.checkout
    - subprocess.Popen.git.checkout
    - typing.IO.tree.git.checkout
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.git.checkout
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.git.checkout
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.checkout
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.checkout
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.checkout
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.checkout
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.checkout
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.checkout
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.git.checkout
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.git.checkout
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.git.checkout
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - read_only
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 279
    functionName: git.refs.head.Head._config_parser
    functionSourceFile: git.refs.head
    functionUses: 5
    functionsReached:
    - git.cmd.Popen.tree.config_writer
    - typing.BinaryIO.config_reader
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.config_writer
    - typing.IO.config_writer
    - typing.cast.tree.object.head.commit.config_writer
    - typing.cast.tree.object.head.commit.config_reader
    - git.config.GitConfigParser._acquire_lock
    - typing.cast.head.commit.tree.config_writer
    - <builtin>.open
    - typing.cast.tree.config_writer
    - os.environ.get
    - typing.cast.object.head.commit.tree.config_reader
    - typing.cast.config_writer
    - datetime.timedelta.tree.config_reader
    - git.repo.base.Repo._config_reader
    - typing.cast.tree.config_reader
    - git.cmd.Popen.config_reader
    - typing.cast.object.head.commit.tree.config_writer
    - git.util.LockFile._obtain_lock_or_raise
    - typing.IO.tree.config_writer
    - typing.cast.object.config_writer
    - typing.BinaryIO.tree.config_writer
    - typing.BinaryIO.config_writer
    - typing.BinaryIO.tree.config_reader
    - datetime.timedelta.config_writer
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_writer
    - <builtin>.ValueError
    - git.config.SectionConstraint.__init__
    - typing.IO.config_reader
    - git.cmd.Popen.tree.config_reader
    - configparser.RawConfigParser.__init__
    - subprocess.Popen.config_reader
    - git.repo.base.Repo.config_reader
    - typing.cast.object.head.commit.config_reader
    - os.path.isfile
    - typing.cast.config_reader
    - typing.cast.object.head.commit.config_writer
    - typing.cast
    - git.cmd.Popen.config_writer
    - typing.cast.tree.head.commit.config_reader
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - subprocess.Popen.config_writer
    - typing.cast.tree.head.commit.config_writer
    - subprocess.Popen.tree.config_writer
    - typing.cast.head.commit.config_writer
    - <builtin>.hasattr
    - typing.IO.tree.config_reader
    - os.path.join
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - typing.cast.head.commit.tree.config_reader
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - <builtin>.isinstance
    - os.path.normpath
    - datetime.timedelta.tree.config_writer
    - typing.cast.object.tree.config_reader
    - typing.cast.object.tree.config_writer
    - typing.cast.tree.object.config_reader
    - typing.cast.object.config_reader
    - datetime.timedelta.config_reader
    - typing.cast.head.commit.config_reader
    - subprocess.Popen.tree.config_reader
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.config_reader
    functionSourceFile: datetime
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.config_reader
    functionSourceFile: git
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.config_reader
    functionSourceFile: git
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.config_reader
    functionSourceFile: subprocess
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.config_reader
    functionSourceFile: datetime
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.config_reader
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.config_reader
    functionSourceFile: subprocess
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.config_writer
    functionSourceFile: git
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.config_writer
    functionSourceFile: typing
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.config_writer
    functionSourceFile: typing
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.config_writer
    functionSourceFile: typing
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.config_writer
    functionSourceFile: typing
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.config_writer
    functionSourceFile: typing
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.config_writer
    functionSourceFile: datetime
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.config_writer
    functionSourceFile: git
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.config_writer
    functionSourceFile: subprocess
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.config_writer
    functionSourceFile: subprocess
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.config_writer
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.config_writer
    functionSourceFile: datetime
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs.remote
    functionSourceFile: git.refs.remote
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.commit
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - commit
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 204
    functionName: git.objects.commit.Commit._calculate_sha_
    functionSourceFile: git.objects.commit
    functionUses: 2
    functionsReached:
    - io.BytesIO.seek
    - typing.cast.object.head.commit.tree.odb.store
    - io.BytesIO.tell
    - typing.cast.tree.object.odb.store
    - commit._serialize
    - gitdb.IStream
    - typing.cast.object.odb.store
    - io.BytesIO
    - typing.cast.tree.odb.store
    - typing.cast.odb.store
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: commit._serialize
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.tell
    functionSourceFile: io
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.seek
    functionSourceFile: io
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.IStream
    functionSourceFile: gitdb
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.odb.store
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.odb.store
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.odb.store
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.odb.store
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.odb.store
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 222
    functionName: git.objects.commit.Commit.replace
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - io.BytesIO.seek
    - typing.cast.object.head.commit.tree.odb.store
    - io.BytesIO.tell
    - typing.cast.tree.object.odb.store
    - attrs.update
    - commit._serialize
    - git.objects.commit.Commit._calculate_sha_
    - gitdb.IStream
    - typing.cast.object.odb.store
    - io.BytesIO
    - git.util.LazyMixin.__class__
    - typing.cast.tree.odb.store
    - <builtin>.getattr
    - typing.cast.odb.store
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attrs.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.util.LazyMixin.__class__
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 241
    functionName: git.objects.commit.Commit._set_cache_
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - io.BytesIO.readline
    - <builtin>.super
    - m.groups
    - _re_only_actor.search
    - cls.name_only_regex.search
    - io.BytesIO
    - typing.cast.object.odb.stream
    - git.util.Actor._from_string
    - io.BytesIO.read
    - typing.cast.odb.stream
    - <builtin>.int
    - m.group
    - enc.strip
    - buf.find
    - <builtin>.abs
    - cls.name_email_regex.search
    - author_line.decode
    - _logger.error
    - git.objects.tree.Tree.__init__
    - git.objects.util.parse_actor_and_date
    - git.objects.util.utctz_to_altz
    - git.objects.commit.Commit._deserialize
    - <builtin>.tuple
    - committer_line.decode
    - git.util.Actor.__init__
    - typing.cast.tree.odb.stream
    - stream.read
    - _re_actor_epoch.search
    - typing.cast.tree.object.odb.stream
    - sigbuf.strip
    - parent_line.startswith
    - parent_line.split
    - gitdb.util.hex_to_bin
    - <builtin>.type
    - typing.cast.object.head.commit.tree.odb.stream
    - sig.rstrip
    - next_line.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 782
    functionName: git.objects.commit.Commit._deserialize
    functionSourceFile: git.objects.commit
    functionUses: 1
    functionsReached:
    - io.BytesIO.readline
    - <builtin>.super
    - m.groups
    - _re_only_actor.search
    - cls.name_only_regex.search
    - git.util.Actor._from_string
    - io.BytesIO.read
    - <builtin>.int
    - m.group
    - enc.strip
    - buf.find
    - <builtin>.abs
    - cls.name_email_regex.search
    - author_line.decode
    - _logger.error
    - git.objects.tree.Tree.__init__
    - git.objects.util.parse_actor_and_date
    - git.objects.util.utctz_to_altz
    - <builtin>.tuple
    - committer_line.decode
    - git.util.Actor.__init__
    - _re_actor_epoch.search
    - sigbuf.strip
    - parent_line.startswith
    - parent_line.split
    - gitdb.util.hex_to_bin
    - <builtin>.type
    - sig.rstrip
    - next_line.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 251
    functionName: git.objects.commit.Commit.authored_datetime
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - datetime.datetime.fromtimestamp
    - datetime.timedelta
    - git.cmd.Popen
    - git.objects.util.from_timestamp
    - utc_dt.astimezone
    - git.objects.util.tzoffset.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 255
    functionName: git.objects.commit.Commit.committed_datetime
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - datetime.datetime.fromtimestamp
    - datetime.timedelta
    - git.cmd.Popen
    - git.objects.util.from_timestamp
    - utc_dt.astimezone
    - git.objects.util.tzoffset.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 259
    functionName: git.objects.commit.Commit.summary
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aeac4c0>
    argNames:
    - self
    - paths
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 266
    functionName: git.objects.commit.Commit.count
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - typing.cast.object.head.commit.tree.git.rev_list
    - typing.cast.object.git.rev_list
    - typing.cast.tree.git.rev_list
    - typing.cast.rev_list
    - typing.cast.tree.object.git.rev_list
    - <builtin>.len
    - typing.cast.git.rev_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.rev_list
    functionSourceFile: typing
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.rev_list
    functionSourceFile: typing
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.rev_list
    functionSourceFile: typing
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.rev_list
    functionSourceFile: typing
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.rev_list
    functionSourceFile: typing
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.rev_list
    functionSourceFile: typing
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 288
    functionName: git.objects.commit.Commit.name_rev
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - typing.cast.tree.git.name_rev
    - typing.cast.name_rev
    - typing.cast.git.name_rev
    - typing.cast.object.head.commit.tree.git.name_rev
    - typing.cast.tree.object.git.name_rev
    - typing.cast.object.git.name_rev
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.name_rev
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.name_rev
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.name_rev
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.name_rev
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.name_rev
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.name_rev
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args_list.extend
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 3
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - proc_or_stream
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 513
    functionName: git.objects.commit.Commit._iter_from_process_or_stream
    functionSourceFile: git.objects.commit
    functionUses: 14
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen.tree.stderr.read
    - typing.IO.tree.wait
    - git.cmd.Popen.wait
    - typing.cast.tree.stderr.read
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - typing.cast.object.head.commit.tree.readline
    - typing.BinaryIO.tree.wait
    - typing.cast.object.tree.wait
    - typing.IO.wait
    - gitdb.utils.encoding.force_bytes
    - subprocess.Popen.wait
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.head.commit.stderr.read
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.object.readline
    - typing.BinaryIO.stderr.read
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.tree.wait
    - typing.cast.object.stdout.readline
    - line.strip
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.tree.object.stderr.read
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.tree.stderr.read
    - typing.cast.stdout.readline
    - typing.cast
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - git.objects.commit.Commit.__init__
    - _logger.debug
    - <builtin>.len
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.object.stderr.read
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.wait
    - <builtin>.isinstance
    - typing.BinaryIO.wait
    - gitdb.util.hex_to_bin
    - typing.cast.tree.readline
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - typing.cast.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b6df250>
    argNames:
    - self
    - paths
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 351
    functionName: git.objects.commit.Commit.iter_parents
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - typing.BinaryIO.tree.wait
    - typing.IO.wait
    - line.strip
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.tree.object.git.rev_list
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - kwargs.get
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 373
    functionName: git.objects.commit.Commit.stats
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - line.split
    - file_info.split
    - typing.cast.object.git.diff
    - <builtin>.int
    - typing.cast.git.diff_tree
    - typing.cast.tree.git.diff_tree
    - typing.cast.tree.object.git.diff_tree
    - filename.strip
    - text.splitlines
    - typing.cast.diff
    - git.objects.commit.Commit.stats.process_lines
    - typing.cast.tree.git.diff
    - <builtin>.len
    - git.util.Stats._list_from_string
    - typing.cast.object.git.diff_tree
    - typing.cast.diff_tree
    - typing.cast.object.head.commit.tree.git.diff
    - <builtin>.zip
    - typing.cast.tree.object.git.diff
    - typing.cast.git.diff
    - git.util.Stats.__init__
    - typing.cast.object.head.commit.tree.git.diff_tree
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - lines
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 381
    functionName: git.objects.commit.Commit.stats.process_lines
    functionSourceFile: git.objects.commit
    functionUses: 1
    functionsReached:
    - file_info.split
    - <builtin>.zip
    - <builtin>.len
    - line.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: file_info.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.diff_tree
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.diff_tree
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.diff_tree
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.diff_tree
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.diff_tree
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 402
    functionName: git.objects.commit.Commit.trailers
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 421
    functionName: git.objects.commit.Commit.trailers_list
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.git.execute
    - typing.IO.repo.odb.info
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - os.environ.copy
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.head.ref.log_entry
    - stdout_value.endswith
    - git.cmd.Git.execute.communicate
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - git.cmd.Popen.tree
    - typing.IO.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.cast.object.git.execute
    - typing.cast.object.odb.info
    - configparser.RawConfigParser.__init__
    - typing.BinaryIO.head.ref.log_entry
    - git.util.remove_password_if_present
    - git.cmd.Git.execute
    - git.db.GitCmdObjectDB.__init__
    - typing.cast.object.resolve
    - destination.write
    - typing.cast.object.tree.dereference_recursive
    - typing.IO.tree.odb.info
    - os.path.isdir
    - typing.cast.object.head.commit.tree.git.execute
    - trailer_list.append
    - typing.cast.object.head.commit.tree
    - typing.cast.tree.object.odb.info
    - typing.IO.resolve
    - datetime.timedelta.tree
    - typing.cast.tree.head.commit.resolve
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.odb.info
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.IO.tree
    - val.strip
    - typing.cast.head.ref.log_entry
    - key.strip
    - git.cmd.Popen.tree.odb.info
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - typing.cast.object.tree.repo.odb.info
    - typing.BinaryIO.tree.resolve
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - progs.append
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.util.expand_path
    - typing.cast.object.head.commit
    - typing.cast.object.tree.resolve
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - os.getcwd
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - match.groups
    - typing.cast.head.commit.tree
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.head.ref.log_entry
    - typing.cast.tree.object.git.execute
    - <builtin>.enumerate
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - subprocess.Popen.repo.odb.info
    - typing.BinaryIO.repo.odb.info
    - typing.cast.tree.object.head.commit
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.ref.log_entry
    - warnings.warn
    - git.cmd.Popen.resolve
    - git.objects.commit.Commit.__init__
    - git.objects.base.Object.new_from_sha
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - source.read
    - _is_cygwin_cache.get
    - stat.S_ISREG
    - urllib.parse.urlsplit
    - typing.cast.object.head.commit.repo.odb.info
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - line.strip
    - typing.cast.tree.resolve
    - kill_check.is_set
    - git.compat.safe_decode
    - git.objects.util.get_object_type_by_name
    - typing.cast.head.commit.tree.repo.odb.info
    - git.util.patch_env
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.util.stream_copy
    - typing.cast.tree.head.commit.repo.odb.info
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - typing.cast.object
    - re.search
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.resolve
    - trailer.strip
    - typing.cast.tree.object.re_hexsha_shortened.match
    - os.path.abspath
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - typing.cast.object.head.commit.dereference_recursive
    - folder.strip
    - urllib.parse.urlunsplit
    - typing.cast.tree.object.head.commit.resolve
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - stderr_value.endswith
    - datetime.timedelta.tree.odb.info
    - git.cmd.Popen.tree.resolve
    - subprocess.Popen.tree.repo.odb.info
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - <builtin>.hasattr
    - typing.IO
    - os.path.isabs
    - git.util.is_cygwin_git
    - threading.Timer
    - git.cmd.Popen.odb.info
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.repo.odb.info
    - trailer.split
    - git.repo.fun.deref_tag
    - typing.cast.tree.odb.info
    - typing.BinaryIO.tree.head.ref.log_entry
    - datetime.timedelta.repo.odb.info
    - typing.cast.object.repo.odb.info
    - typing.cast.head.commit.repo.odb.info
    - subprocess.Popen
    - git.cmd.Git.AutoInterrupt.__init__
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - git.util.LockFile._lock_file_path
    - typing.BinaryIO.tree.odb.info
    - proc.stderr.read
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO.odb.info
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - pathlib.Path.read_text
    - typing.BinaryIO.dereference_recursive
    - proc.stderr.close
    - proc.stdout.close
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - git.refs.tag.TagReference.object
    - typing.IO.re_hexsha_shortened.match
    - git.util.LockFile._has_lock
    - typing.IO.tree.dereference_recursive
    - git.util.cygpath
    - git.util.LockFile._obtain_lock
    - git.cmd._safer_popen_windows
    - typing.cast.object.head.commit.odb.info
    - typing.cast.tree.object
    - git.objects.tag.TagObject.__init__
    - os.path.dirname
    - datetime.timedelta.odb.info
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.cast.object.head.commit.tree.odb.info
    - typing.IO.tree.repo.odb.info
    - typing.cast.object.tree
    - typing.BinaryIO.tree.repo.odb.info
    - p.upper
    - typing.cast.object.dereference_recursive
    - watchdog.cancel
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - subprocess.Popen.tree.odb.info
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - t.split
    - typing.BinaryIO
    - typing.cast.tree.object.repo.odb.info
    - typing.cast.tree.object.resolve
    - watchdog.start
    - regex.match
    - git.repo.fun.short_to_long
    - <builtin>.dict
    - typing.cast.head.commit.re_hexsha_shortened.match
    - fpath.upper
    - <builtin>.str
    - <builtin>.int
    - subprocess.Popen.tree
    - typing.IO.head.ref.log_entry
    - git.refs.symbolic.SymbolicReference._get_object
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - err.encode
    - typing.cast.execute
    - subprocess.Popen.tree.resolve
    - typing.cast.head.commit
    - typing.BinaryIO.resolve
    - git.repo.fun.rev_parse
    - typing.cast.head.commit.tree.odb.info
    - git.cmd.Popen.tree.dereference_recursive
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen.odb.info
    - os.environ.get
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - subprocess.Popen.resolve
    - path.startswith
    - typing.cast.tree
    - typing.IO.tree.head.ref.log_entry
    - git.cmd.Popen.tree.head.ref.log_entry
    - proc.wait
    - datetime.timedelta.tree.repo.odb.info
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.tree.head.commit.odb.info
    - configparser.RawConfigParser.getboolean
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - env.update
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.IO.odb.info
    - typing.cast.tree.object.head.commit.repo.odb.info
    - typing.IO.tree.resolve
    - <builtin>.ValueError
    - os.path.expandvars
    - typing.cast.object.head.commit.tree.repo.odb.info
    - git.cmd.Popen.tree.repo.odb.info
    - git.cmd.Popen
    - git.repo.base.Repo.tree
    - typing.cast.tree.object.head.commit.odb.info
    - os.path.exists
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.repo.odb.info
    - configparser.RawConfigParser.has_option
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - os.access
    - typing.cast.tree.git.execute
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.odb.info
    - threading.Event
    - typing.cast
    - git.cmd.Git.execute.as_text
    - s.decode
    - <builtin>.issubclass
    - os.path.normpath
    - subprocess.Popen.re_hexsha_shortened.match
    - new_cmdline.append
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - proc.stdout.read
    - typing.cast.tree.head.commit
    - os.getenv
    - git.cmd.Popen.repo.odb.info
    - git.objects.base.IndexObject.__init__
    - typing.cast.head.commit.odb.info
    - os.stat
    - git.objects.tree.Tree.__init__
    - rev.startswith
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Git.is_cygwin
    - _logger.debug
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.git.execute
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.git.execute
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.execute
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.git.execute
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.git.execute
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.git.execute
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trailer.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trailer.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: val.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trailer_list.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 473
    functionName: git.objects.commit.Commit.trailers_dict
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - collections.defaultdict
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.defaultdict
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b4ccfa0>
    - <ast.Constant object at 0x7fab5b4cc220>
    - <ast.Constant object at 0x7fab5b4cc610>
    - <ast.Constant object at 0x7fab5b4cc7c0>
    - <ast.Constant object at 0x7fab5b4ccb20>
    - <ast.Constant object at 0x7fab5b4cc550>
    argNames:
    - cls
    - repo
    - tree
    - message
    - parent_commits
    - head
    - author
    - committer
    - author_date
    - commit_date
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 562
    functionName: git.objects.commit.Commit.create_from_tree
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - io.BytesIO.seek
    - git.util.Actor._main_actor
    - typing.cast.object.head.commit.tree.odb.store
    - <builtin>.super
    - typing.cast.tree.object.odb.store
    - string_date.count
    - commit._serialize
    - string_date.astimezone
    - os.environ.get
    - calendar.timegm
    - <builtin>.setattr
    - io.BytesIO
    - <builtin>.getattr
    - git.objects.util.verify_utctz
    - <builtin>.int
    - time.strptime
    - git.objects.util.parse_date
    - <builtin>.abs
    - timestamp.startswith
    - repo.tree
    - cls.conf_encoding.split
    - <builtin>.ValueError
    - typing.cast.tree.odb.store
    - repo.head.set_commit
    - git.objects.util.utctz_to_altz
    - git.util.Actor.committer
    - git.objects.commit.Commit._calculate_sha_
    - typing.cast
    - date_formats.append
    - typing.cast.total_seconds
    - time.time
    - git.objects.commit.Commit.__init__
    - typing.cast.object.odb.store
    - repo.head.set_reference
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - repo.config_reader
    - string_date.split
    - io.BytesIO.tell
    - <builtin>.isinstance
    - git.refs.Head.create
    - gitdb.IStream
    - <builtin>.type
    - cr.get_value
    - config_reader.get
    - git.util.Actor.author
    - string_date.utcoffset
    - time.localtime
    - typing.cast.odb.store
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.localtime
    functionSourceFile: time
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.conf_encoding.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cr.get_value
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.tree
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.head.set_commit
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs.Head.create
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.head.set_reference
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 10
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 723
    functionName: git.objects.commit.Commit._serialize
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - git.objects.util.altz_to_utctz_str
    - git.util.LazyMixin.__getattribute__
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.util.LazyMixin.__getattribute__
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.readline
    functionSourceFile: io
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent_line.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parent_line.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: next_line.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enc.strip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: buf.find
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sigbuf.strip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sig.rstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: author_line.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: committer_line.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.read
    functionSourceFile: io
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 889
    functionName: git.objects.commit.Commit.co_authors
    functionSourceFile: git.objects.commit
    functionUses: 0
    functionsReached:
    - re.findall
    - co_authors.append
    - git.util.Actor.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.findall
    functionSourceFile: re
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: co_authors.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.submodule.base
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.submodule.base.UpdateProgress
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b43ac10>
    - <ast.Constant object at 0x7fab5b43a4f0>
    - <ast.Constant object at 0x7fab5b43ad00>
    - <ast.Constant object at 0x7fab5b43a8e0>
    - <ast.Constant object at 0x7fab5b43ad60>
    - <ast.Constant object at 0x7fab5b43a2e0>
    argNames:
    - self
    - repo
    - binsha
    - mode
    - path
    - name
    - parent_commit
    - url
    - branch_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: git.objects.submodule.base.Submodule.__init__
    functionSourceFile: git.objects.submodule.base
    functionUses: 15
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 167
    functionName: git.objects.submodule.base.Submodule._set_cache_
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - weakref.ref
    - os.path.join
    - git.refs.symbolic.SymbolicReference.to_full_path
    - <builtin>.super
    - git.objects.submodule.base.Submodule.config_reader
    - git.objects.submodule.base.Submodule._config_parser
    - <builtin>.isinstance
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.objects.submodule.base.Submodule._sio_modules
    - reader.get
    - git.config.SectionConstraint.__init__
    - git.objects.submodule.util.sm_section
    - io.BytesIO
    - <builtin>.str
    - git.objects.submodule.base.Submodule._config_parser_constrained
    - reader.get_value
    linkageType: pythonLinkage
    raised:
    - ValueError
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1540
    functionName: git.objects.submodule.base.Submodule.config_reader
    functionSourceFile: git.objects.submodule.base
    functionUses: 1
    functionsReached:
    - weakref.ref
    - <builtin>.super
    - git.objects.submodule.base.Submodule._config_parser
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.objects.submodule.base.Submodule._sio_modules
    - git.config.SectionConstraint.__init__
    - git.objects.submodule.util.sm_section
    - io.BytesIO
    - os.path.join
    - git.objects.submodule.base.Submodule._config_parser_constrained
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: reader.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1405
    functionName: git.objects.submodule.base.Submodule.module
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - git
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 199
    functionName: git.objects.submodule.base.Submodule._need_gitfile_submodules
    functionSourceFile: git.objects.submodule.base
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 202
    functionName: git.objects.submodule.base.Submodule.__eq__
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 209
    functionName: git.objects.submodule.base.Submodule.__ne__
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 213
    functionName: git.objects.submodule.base.Submodule.__hash__
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 217
    functionName: git.objects.submodule.base.Submodule.__str__
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: git.objects.submodule.base.Submodule.__repr__
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - parent_commit
    - read_only
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 230
    functionName: git.objects.submodule.base.Submodule._config_parser
    functionSourceFile: git.objects.submodule.base
    functionUses: 21
    functionsReached:
    - <builtin>.super
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.objects.submodule.base.Submodule._sio_modules
    - io.BytesIO
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - ValueError
    - IOError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - parent_commit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 282
    functionName: git.objects.submodule.base.Submodule._sio_modules
    functionSourceFile: git.objects.submodule.base
    functionUses: 22
    functionsReached:
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: git.objects.submodule.util.SubmoduleConfigParser.__init__
    functionSourceFile: git.objects.submodule.util
    functionUses: 22
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 271
    functionName: git.objects.submodule.base.Submodule._clear_cache
    functionSourceFile: git.objects.submodule.base
    functionUses: 3
    functionsReached:
    - <builtin>.delattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.delattr
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - read_only
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 292
    functionName: git.objects.submodule.base.Submodule._config_parser_constrained
    functionSourceFile: git.objects.submodule.base
    functionUses: 6
    functionsReached:
    - weakref.ref
    - <builtin>.super
    - git.objects.submodule.base.Submodule._config_parser
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.objects.submodule.base.Submodule._sio_modules
    - git.config.SectionConstraint.__init__
    - git.objects.submodule.util.sm_section
    - io.BytesIO
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - submodule
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    functionSourceFile: git.objects.submodule.util
    functionUses: 7
    functionsReached:
    - weakref.ref
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 37
    functionName: git.objects.submodule.util.sm_section
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - parent_repo
    - path
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 304
    functionName: git.objects.submodule.base.Submodule._module_abspath
    functionSourceFile: git.objects.submodule.base
    functionUses: 5
    functionsReached:
    - git.objects.submodule.base.Submodule._need_gitfile_submodules
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - NotADirectoryError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b0723d0>
    - <ast.Constant object at 0x7fab5b072850>
    argNames:
    - cls
    - repo
    - url
    - path
    - name
    - allow_unsafe_options
    - allow_unsafe_protocols
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 312
    functionName: git.objects.submodule.base.Submodule._clone_repo
    functionSourceFile: git.objects.submodule.base
    functionUses: 2
    functionsReached:
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - datetime.timedelta.tree.rstrip
    - <builtin>.list
    - typing.cast.object.head.commit.encode
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.IO.tree.wait
    - git.cmd.Popen.tree._terminate
    - option.startswith
    - typing.cast.object.tree.poll
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.resolve
    - typing.cast.object.poll
    - git.cmd.Popen.stdout.close
    - git.objects.submodule.base.Submodule._need_gitfile_submodules
    - typing.cast.tree.object.stderr.read
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.types.assert_never
    - <builtin>.isinstance
    - process.communicate
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.head.commit.stderr.close
    - typing.cast.object.tree.encode
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - typing.IO.wait
    - <builtin>.callable
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - configparser.RawConfigParser.__init__
    - git.cmd.Popen.tree.stderr.close
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.stderr.close
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - match.group
    - typing.cast.object.stderr.read
    - git.util.remove_password_if_present
    - git.db.GitCmdObjectDB.__init__
    - git.cmd.Popen.tree.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.cast.object.resolve
    - typing.cast.head.commit.tree.stdin.close
    - os.path.isdir
    - url.replace
    - typing.IO.tree.encode
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.stderr.close
    - typing.cast.tree.object._terminate
    - repo.git.update_environment
    - <builtin>.float
    - git.config.GitConfigParser.__init__
    - git.objects.submodule.base.Submodule._module_abspath
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - os.path.islink
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.util.RemoteProgress.__init__
    - git.util.LockFile.__init__
    - typing.cast.object.head.commit.wait
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.tree.resolve
    - typing.IO.tree.stdin.close
    - datetime.timedelta.tree.resolve
    - typing.IO.rstrip
    - progs.append
    - subprocess.Popen.poll
    - git.cmd.Popen.tree.stdin.close
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - git.util.expand_path
    - option.lstrip
    - typing.cast.object.tree.resolve
    - urllib.parse.urlsplit._replace
    - subprocess.Popen.terminate
    - os.getcwd
    - typing.cast.tree.head.commit.wait
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.object.encode
    - git.util.LockFile._obtain_lock_or_raise
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - <builtin>.enumerate
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Git.polish_url
    - typing.cast.poll
    - typing.cast.tree._terminate
    - typing.cast.tree.object.head.commit.stdin.close
    - warnings.warn
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.util.RemoteProgress.new_message_handler.handler
    - git.cmd.Popen.resolve
    - git.cmd.Popen.terminate
    - git.cmd.Git.environment
    - _is_cygwin_cache.get
    - typing.cast.terminate
    - git.objects.submodule.base.Submodule._write_git_file_and_module_config
    - typing.cast.tree.object.head.commit.poll
    - stat.S_ISREG
    - typing.cast.object.head.commit.tree.encode
    - git.cmd.Popen._terminate
    - urllib.parse.urlsplit
    - cmdline.split
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - subprocess.Popen.tree.terminate
    - datetime.timedelta._terminate
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - line.strip
    - typing.cast.head.commit.encode
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.resolve
    - os.makedirs
    - typing.cast.tree.object.head.commit.stderr.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.object.encode
    - message.endswith
    - os.readlink
    - fp.read
    - content.startswith
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - typing.cast.tree.object.stdout.close
    - datetime.timedelta.stderr.close
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.resolve
    - t.join
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - datetime.timedelta.tree.stderr.close
    - os.path.abspath
    - datetime.timedelta.rstrip
    - typing.cast.tree.head.commit.poll
    - <builtin>.zip
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.stderr.read
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - kwargs.pop
    - datetime.timedelta.tree._terminate
    - folder.strip
    - urllib.parse.urlunsplit
    - cls.re_unsafe_protocol.match
    - typing.cast.tree.object.head.commit.resolve
    - subprocess.Popen.rstrip
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Popen.tree.wait
    - git.repo.base.Repo.clone_from
    - git.util.CallableRemoteProgress.update
    - git.cmd.Popen.tree.resolve
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - os.path.relpath
    - typing.cast.object.tree.rstrip
    - typing.BinaryIO.tree.rstrip
    - typing.cast.tree.object.terminate
    - git.cmd.handle_process_output
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.IO.tree._terminate
    - subprocess.Popen.tree.stdin.close
    - typing.cast.tree.stdin.close
    - typing.IO.tree.stderr.close
    - line.decode
    - subprocess.Popen
    - datetime.timedelta.encode
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - git.repo.base.Repo._get_config_path
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - git.repo.base.Repo.config_reader
    - subprocess.Popen.tree.rstrip
    - os.path.split
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.object.stderr.close
    - git.util.LockFile._lock_file_path
    - fp.write
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.tree.encode
    - pathlib.Path.read_text
    - typing.BinaryIO.terminate
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - datetime.timedelta.stdout.close
    - typing.cast.object.head.commit.poll
    - typing.cast.clone
    - typing.cast.tree.terminate
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.util.LockFile._has_lock
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - os.path.dirname
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.tree.poll
    - kwargs.get
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.head.commit._terminate
    - datetime.timedelta.tree.poll
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - <builtin>.tuple
    - typing.cast.object.head.commit.stderr.close
    - git.repo.fun.find_submodule_git_dir
    - <builtin>.len
    - os.path.join
    - git.cmd.Git.check_unsafe_options
    - typing.cast.working_tree_dir.replace
    - typing.cast.head.commit.terminate
    - typing.IO.tree.stdout.close
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.cast.tree.object.resolve
    - shlex.split
    - kwargs.keys
    - regex.match
    - typing.BinaryIO.encode
    - fpath.upper
    - <builtin>.str
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - typing.cast.object.working_tree_dir.replace
    - typing.cast.head.commit.tree.stderr.close
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.tree.head.commit._terminate
    - typing.cast.tree.working_tree_dir.replace
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.resolve
    - typing.BinaryIO.tree._terminate
    - typing.cast.tree.object.head.commit.rstrip
    - typing.IO._terminate
    - typing.cast.stderr.close
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen._terminate
    - typing.cast.tree.stderr.read
    - os.environ.get
    - datetime.timedelta.tree.stdout.close
    - git.cmd.Popen.tree.poll
    - PATHEXT.split
    - subprocess.Popen.resolve
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - path.startswith
    - typing.cast.head.commit.tree.encode
    - typing.cast.object.tree.stdout.close
    - kwargs.items
    - typing.IO.stdin.close
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - typing.cast.object.head.commit.terminate
    - typing.IO.tree.rstrip
    - typing.cast.head.commit.stderr.close
    - git.cmd.Git.update_environment
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - configparser.RawConfigParser.getboolean
    - typing.cast.environment
    - <builtin>.super
    - subprocess.Popen.stderr.close
    - typing.IO.tree.stderr.read
    - typing.cast.tree.head.commit.stdin.close
    - t.start
    - url.startswith
    - typing.IO.tree.resolve
    - git.cmd.Popen.rstrip
    - datetime.timedelta.poll
    - <builtin>.ValueError
    - typing.cast.object.tree._terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - os.path.expandvars
    - typing.cast.head.commit.tree.poll
    - os.path.exists
    - typing.cast.head.commit.stdout.close
    - git.util.py_where
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - os.remove
    - typing.cast.tree.object.rstrip
    - typing.BinaryIO.tree.terminate
    - typing.cast
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - typing.cast.stdin.close
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.object.tree.terminate
    - typing.BinaryIO.wait
    - typing.cast.object.rstrip
    - typing.BinaryIO.tree.stderr.close
    - new_cmdline.append
    - os.path.expanduser
    - os.getenv
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - os.stat
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - datetime.timedelta.tree.terminate
    - typing.cast.head.commit.tree.wait
    - git.util.to_native_path_linux
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.repo.base.Repo._clone
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - working_tree_dir
    - module_abspath
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 396
    functionName: git.objects.submodule.base.Submodule._write_git_file_and_module_config
    functionSourceFile: git.objects.submodule.base
    functionUses: 5
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.LockFile.__init__
    - os.path.expanduser
    - <builtin>.open
    - os.environ.get
    - writer.set_value
    - <builtin>.str
    - git.util.LockFile._obtain_lock_or_raise
    - os.remove
    - <builtin>.ValueError
    - typing.cast.object.working_tree_dir.replace
    - configparser.RawConfigParser.__init__
    - os.path.isfile
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - typing.cast.tree.working_tree_dir.replace
    - fp.write
    - os.path.join
    - os.path.relpath
    - git.util.to_native_path_linux
    - <builtin>.hasattr
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.config.get_config_path
    - typing.cast.working_tree_dir.replace
    - <builtin>.isinstance
    - os.path.normpath
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.config.GitConfigParser._acquire_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - parent_repo
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 369
    functionName: git.objects.submodule.base.Submodule._to_relative_path
    functionSourceFile: git.objects.submodule.base
    functionUses: 2
    functionsReached:
    - git.util.to_native_path_linux
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.cast.working_tree_dir.replace
    - path.startswith
    - os.path.isabs
    - path.endswith
    - typing.cast.tree.working_tree_dir.replace
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.len
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    - working_tree_linux.rstrip
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: working_tree_linux.rstrip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.relpath
    functionSourceFile: os
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 6
    IfCount: 14
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b60d100>
    - <ast.Constant object at 0x7fab5b60dd60>
    - <ast.Constant object at 0x7fab5b60dee0>
    - <ast.Constant object at 0x7fab5b60d820>
    - <ast.Constant object at 0x7fab5b60d730>
    - <ast.Constant object at 0x7fab5b60d910>
    - <ast.Constant object at 0x7fab5b60d760>
    - <ast.Constant object at 0x7fab5b60d250>
    argNames:
    - cls
    - repo
    - name
    - path
    - url
    - branch
    - no_checkout
    - depth
    - env
    - clone_multi_options
    - allow_unsafe_options
    - allow_unsafe_protocols
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 435
    functionName: git.objects.submodule.base.Submodule.add
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - datetime.timedelta.tree.rstrip
    - <builtin>.list
    - typing.cast.object.head.commit.encode
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.IO.tree.wait
    - git.cmd.Popen.tree._terminate
    - option.startswith
    - typing.cast.object.tree.poll
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.resolve
    - typing.cast.object.poll
    - sm.exists
    - git.cmd.Popen.stdout.close
    - git.refs.symbolic.SymbolicReference.to_full_path
    - git.objects.submodule.base.Submodule._need_gitfile_submodules
    - typing.cast.tree.object.stderr.read
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - git.types.assert_never
    - <builtin>.isinstance
    - process.communicate
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.head.commit.stderr.close
    - typing.cast.object.tree.encode
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - <builtin>.callable
    - typing.IO.wait
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - configparser.RawConfigParser.__init__
    - git.cmd.Popen.tree.stderr.close
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.stderr.close
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - match.group
    - git.util.remove_password_if_present
    - typing.cast.object.stderr.read
    - git.db.GitCmdObjectDB.__init__
    - git.cmd.Popen.tree.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.cast.object.resolve
    - typing.cast.head.commit.tree.stdin.close
    - os.path.isdir
    - url.replace
    - typing.IO.tree.encode
    - typing.IO.resolve
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.stderr.close
    - typing.cast.tree.object._terminate
    - repo.git.update_environment
    - <builtin>.float
    - git.config.GitConfigParser.__init__
    - git.objects.submodule.base.Submodule._module_abspath
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - os.path.islink
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.util.RemoteProgress.__init__
    - git.util.LockFile.__init__
    - typing.cast.object.head.commit.wait
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.tree.resolve
    - typing.IO.tree.stdin.close
    - datetime.timedelta.tree.resolve
    - typing.IO.rstrip
    - progs.append
    - subprocess.Popen.poll
    - git.cmd.Popen.tree.stdin.close
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - git.util.expand_path
    - option.lstrip
    - typing.cast.object.tree.resolve
    - urllib.parse.urlsplit._replace
    - subprocess.Popen.terminate
    - os.getcwd
    - typing.cast.tree.head.commit.wait
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.object.encode
    - git.util.LockFile._obtain_lock_or_raise
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - datetime.timedelta.tree.stderr.read
    - sm.module
    - <builtin>.enumerate
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.cmd.Git.polish_url
    - typing.cast.poll
    - typing.cast.tree._terminate
    - typing.cast.tree.object.head.commit.stdin.close
    - warnings.warn
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.util.RemoteProgress.new_message_handler.handler
    - git.cmd.Popen.resolve
    - git.cmd.Popen.terminate
    - git.cmd.Git.environment
    - _is_cygwin_cache.get
    - typing.cast.terminate
    - git.objects.submodule.base.Submodule._write_git_file_and_module_config
    - typing.cast.tree.object.head.commit.poll
    - stat.S_ISREG
    - typing.cast.object.head.commit.tree.encode
    - git.cmd.Popen._terminate
    - urllib.parse.urlsplit
    - cmdline.split
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - subprocess.Popen.tree.terminate
    - datetime.timedelta._terminate
    - git.cmd.Popen.poll
    - typing.IO.stdout.close
    - line.strip
    - typing.cast.head.commit.encode
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.resolve
    - os.makedirs
    - typing.cast.tree.object.head.commit.stderr.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.object.encode
    - message.endswith
    - os.readlink
    - fp.read
    - content.startswith
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - typing.cast.tree.object.stdout.close
    - datetime.timedelta.stderr.close
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.resolve
    - t.join
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - datetime.timedelta.tree.stderr.close
    - os.path.abspath
    - datetime.timedelta.rstrip
    - typing.cast.tree.head.commit.poll
    - <builtin>.zip
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.stderr.read
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - kwargs.pop
    - datetime.timedelta.tree._terminate
    - folder.strip
    - urllib.parse.urlunsplit
    - cls.re_unsafe_protocol.match
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.tree.object.head.commit.resolve
    - subprocess.Popen.rstrip
    - git.cmd.Git.check_unsafe_protocols
    - git.cmd.Popen.tree.wait
    - git.repo.base.Repo.clone_from
    - git.util.CallableRemoteProgress.update
    - git.cmd.Popen.tree.resolve
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - os.path.relpath
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.BinaryIO.tree.rstrip
    - typing.cast.tree.object.terminate
    - git.cmd.handle_process_output
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.IO.tree._terminate
    - subprocess.Popen.tree.stdin.close
    - typing.cast.tree.stdin.close
    - typing.IO.tree.stderr.close
    - line.decode
    - subprocess.Popen
    - datetime.timedelta.encode
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - git.repo.base.Repo._get_config_path
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - git.repo.base.Repo.config_reader
    - subprocess.Popen.tree.rstrip
    - os.path.split
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.object.stderr.close
    - git.util.LockFile._lock_file_path
    - fp.write
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.tree.encode
    - pathlib.Path.read_text
    - typing.BinaryIO.terminate
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - working_tree_linux.rstrip
    - datetime.timedelta.stdout.close
    - index.add
    - typing.cast.object.head.commit.poll
    - typing.cast.clone
    - typing.cast.tree.terminate
    - typing.cast.object.wait
    - typing.BinaryIO.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.util.LockFile._has_lock
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - git.util.cygpath
    - git.util.LockFile._obtain_lock
    - os.path.dirname
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.tree.poll
    - kwargs.get
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.head.commit._terminate
    - datetime.timedelta.tree.poll
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - p.upper
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - typing.cast.object.head.commit.stderr.close
    - <builtin>.tuple
    - git.objects.submodule.util.sm_section
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - git.cmd.Git.check_unsafe_options
    - git.objects.submodule.base.Submodule._to_relative_path
    - typing.cast.working_tree_dir.replace
    - typing.cast.head.commit.terminate
    - typing.IO.tree.stdout.close
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.cast.tree.object.resolve
    - shlex.split
    - kwargs.keys
    - regex.match
    - typing.BinaryIO.encode
    - fpath.upper
    - <builtin>.str
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.objects.submodule.base.Submodule._clone_repo
    - typing.cast.object.working_tree_dir.replace
    - typing.cast.head.commit.tree.stderr.close
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.tree.head.commit._terminate
    - typing.cast.tree.working_tree_dir.replace
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.tree._terminate
    - typing.BinaryIO.resolve
    - typing.cast.tree.object.head.commit.rstrip
    - typing.IO._terminate
    - typing.cast.stderr.close
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen._terminate
    - typing.cast.tree.stderr.read
    - os.environ.get
    - datetime.timedelta.tree.stdout.close
    - git.cmd.Popen.tree.poll
    - sm.module_exists
    - PATHEXT.split
    - index.entry_key
    - subprocess.Popen.resolve
    - typing.cast.head.commit.tree.stdout.close
    - path.startswith
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.object.tree.stdout.close
    - kwargs.items
    - typing.IO.stdin.close
    - git.util._is_cygwin_git
    - configparser.RawConfigParser._dict
    - typing.cast.object.head.commit.terminate
    - typing.IO.tree.rstrip
    - typing.cast.head.commit.stderr.close
    - git.cmd.Git.update_environment
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - configparser.RawConfigParser.getboolean
    - typing.cast.environment
    - <builtin>.super
    - subprocess.Popen.stderr.close
    - typing.IO.tree.stderr.read
    - typing.cast.tree.head.commit.stdin.close
    - t.start
    - url.startswith
    - typing.IO.tree.resolve
    - git.cmd.Popen.rstrip
    - datetime.timedelta.poll
    - <builtin>.ValueError
    - typing.cast.object.tree._terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - os.path.expandvars
    - typing.cast.head.commit.tree.poll
    - path.endswith
    - os.path.exists
    - typing.cast.head.commit.stdout.close
    - git.util.py_where
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - sm.repo.config_writer
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - os.remove
    - sm.config_writer
    - typing.cast.tree.object.rstrip
    - typing.BinaryIO.tree.terminate
    - typing.cast
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.tree.stdout.close
    - typing.cast.stdin.close
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - typing.cast.object.tree.terminate
    - typing.BinaryIO.tree.stderr.close
    - new_cmdline.append
    - os.path.expanduser
    - os.getenv
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - os.stat
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - datetime.timedelta.tree.terminate
    - typing.cast.head.commit.tree.wait
    - git.util.to_native_path_linux
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.repo.base.Repo._clone
    - git.config.get_config_path
    - git.cmd.Git.is_cygwin
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - git.repo.fun.is_git_dir
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm.exists
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: index.entry_key
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm.module_exists
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm.module
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm.repo.config_writer
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm.config_writer
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: index.add
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 36
    ICount: 22
    IfCount: 25
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b173a00>
    - <ast.Constant object at 0x7fab5b1734c0>
    - <ast.Constant object at 0x7fab5b173a60>
    - <ast.Constant object at 0x7fab5b1738b0>
    - <ast.Constant object at 0x7fab5b173640>
    - <ast.Constant object at 0x7fab5b173250>
    - <ast.Constant object at 0x7fab5b173910>
    - <ast.Constant object at 0x7fab5b173130>
    - <ast.Constant object at 0x7fab5b1733a0>
    - <ast.Constant object at 0x7fab5b173100>
    - <ast.Constant object at 0x7fab5b173580>
    argNames:
    - self
    - recursive
    - init
    - to_latest_revision
    - progress
    - dry_run
    - force
    - keep_going
    - env
    - clone_multi_options
    - allow_unsafe_options
    - allow_unsafe_protocols
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 634
    functionName: git.objects.submodule.base.Submodule.update
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.cast.tree.head.set_reference
    - typing.BinaryIO.tree.encode
    - typing.IO.stderr.close
    - datetime.timedelta.tree.rstrip
    - <builtin>.list
    - typing.cast.tree.head.log_append
    - typing.cast.object.head.commit.encode
    - proc.communicate
    - git.repo.base.Repo.__init__
    - typing.IO.tree.wait
    - git.cmd.Popen.tree._terminate
    - option.startswith
    - typing.cast.object.tree.poll
    - typing.cast.log_entry
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.stderr.read
    - datetime.timedelta.tree.dereference_recursive
    - datetime.timedelta.resolve
    - typing.cast.object.poll
    - git.cmd.Popen.stdout.close
    - git.refs.symbolic.SymbolicReference.to_full_path
    - git.objects.submodule.base.Submodule._need_gitfile_submodules
    - typing.cast.tree.object.stderr.read
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - git.util.RemoteProgress.new_message_handler
    - typing.cast.tree.poll
    - typing.cast.tree.object.is_dirty
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.is_dirty
    - git.types.assert_never
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - process.communicate
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.object.head.commit.tree.is_dirty
    - typing.cast.tree.head.commit.stderr.close
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.head.log_append
    - typing.cast.object.tree.encode
    - threads.append
    - git.cmd.Popen.tree.stdout.close
    - datetime.timedelta.re_hexsha_shortened.match
    - typing.BinaryIO.tree.wait
    - typing.cast.object.git.checkout
    - typing.IO.wait
    - <builtin>.callable
    - datetime.timedelta.tree.head.ref.log_entry
    - git.objects.submodule.util.find_first_remote_branch
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - configparser.RawConfigParser.__init__
    - git.cmd.Popen.tree.stderr.close
    - typing.BinaryIO.head.ref.log_entry
    - configparser.RawConfigParser.sections
    - typing.cast.diff
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.stderr.close
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.cast.object.stderr.read
    - git.util.remove_password_if_present
    - typing.IO.tree.head.log_append
    - git.db.GitCmdObjectDB.__init__
    - git.cmd.Popen.tree.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit.tree.terminate
    - typing.cast.wait
    - typing.cast.object.resolve
    - typing.cast.head.commit.tree.stdin.close
    - typing.cast.head.log_append
    - git.objects.submodule.base.Submodule.update
    - typing.cast.object.tree.dereference_recursive
    - os.path.isdir
    - typing.cast.tree.object.head.set_reference
    - url.replace
    - typing.IO.tree.encode
    - typing.IO.resolve
    - git.repo.base.Repo.config_writer
    - typing.cast.tree.head.commit.resolve
    - typing.cast.tree.stderr.close
    - typing.cast.tree.object._terminate
    - repo.git.update_environment
    - <builtin>.float
    - typing.cast.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - typing.cast.tree.object.head.log_append
    - typing.cast.tree.head.ref.log_entry
    - typing.BinaryIO.head.log_append
    - git.objects.submodule.base.Submodule._module_abspath
    - typing.IO.head.log_append
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - remote.fetch
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.util.RemoteProgress.__init__
    - typing.cast.status
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - git.util.LockFile.__init__
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.object.head.commit.wait
    - typing.cast.head.commit.stdin.close
    - io.BytesIO
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.resolve
    - typing.IO.tree.stdin.close
    - typing.cast.head.reference.set_tracking_branch
    - datetime.timedelta.tree.resolve
    - typing.IO.dereference_recursive
    - typing.IO.rstrip
    - progs.append
    - subprocess.Popen.poll
    - typing.cast.tree.object.merge_base
    - git.cmd.Popen.tree.stdin.close
    - configparser.RawConfigParser.get
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.objects.submodule.base.Submodule._config_parser
    - git.util.expand_path
    - line.startswith
    - option.lstrip
    - typing.cast.object.tree.resolve
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - urllib.parse.urlsplit._replace
    - subprocess.Popen.terminate
    - os.getcwd
    - typing.cast.object.head.reset
    - <builtin>.range
    - typing.cast.object.tree.head.log_append
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.tree.head.commit.wait
    - t.is_alive
    - typing.cast.tree.object.poll
    - match.groups
    - datetime.timedelta.head.log_append
    - typing.cast.tree.object.encode
    - git.util.LockFile._obtain_lock_or_raise
    - git.remote.add_progress
    - git.cmd.Git.AutoInterrupt.wait
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.reference.tracking_branch
    - subprocess.Popen.tree.poll
    - subprocess.Popen.stdout.close
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.enumerate
    - typing.cast.tree.git.checkout
    - datetime.timedelta.tree.stderr.read
    - git.repo.fun.name_to_object
    - git.repo.fun.find_worktree_git_dir
    - <builtin>.getattr
    - typing.cast.object.head.commit.tree.stderr.close
    - git.repo.base.Repo.commit
    - _logger.warning
    - git.cmd.Git.polish_url
    - typing.cast.poll
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.tree._terminate
    - _logger.error
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.stdin.close
    - warnings.warn
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.util.RemoteProgress.new_message_handler.handler
    - git.cmd.Popen.resolve
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.terminate
    - typing.cast.tree.head.commit.dereference_recursive
    - git.cmd.Git.environment
    - _is_cygwin_cache.get
    - typing.cast.terminate
    - git.objects.submodule.base.Submodule._write_git_file_and_module_config
    - typing.cast.tree.object.head.commit.poll
    - stat.S_ISREG
    - typing.cast.object.head.commit.tree.encode
    - git.cmd.Popen._terminate
    - urllib.parse.urlsplit
    - cmdline.split
    - typing.cast.tree.config_writer
    - writer.set_value
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - typing.cast.head.reference.tracking_branch
    - git.repo.base.Repo.is_dirty
    - subprocess.Popen.tree.terminate
    - typing.cast.object.config_writer
    - typing.cast.tree.head.reset
    - datetime.timedelta._terminate
    - git.cmd.Popen.poll
    - typing.cast.head.reset
    - typing.IO.stdout.close
    - line.strip
    - typing.cast.head.commit.encode
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.tree.resolve
    - os.makedirs
    - git.objects.submodule.base.Submodule.module
    - typing.cast.tree.object.head.commit.stderr.close
    - git.cmd.Git.AutoInterrupt._terminate
    - typing.cast.object.encode
    - message.endswith
    - typing.cast.object.head.ref.log_entry
    - os.readlink
    - fp.read
    - content.startswith
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.cmd.Popen.dereference_recursive
    - git.util._get_exe_extensions
    - git.cmd.Git.__init__
    - re.search
    - typing.cast.tree.object.stdout.close
    - typing.cast.object.head.commit.tree.dereference_recursive
    - repo.commit
    - datetime.timedelta.stderr.close
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - os.rmdir
    - git.cmd.Popen.head.log_append
    - typing.cast.resolve
    - t.join
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - datetime.timedelta.tree.stderr.close
    - os.path.abspath
    - datetime.timedelta.rstrip
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.tree.merge_base
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.poll
    - <builtin>.zip
    - git.config.GitConfigParser._acquire_lock
    - <builtin>.any
    - subprocess.Popen.stderr.read
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.object.head.commit.dereference_recursive
    - kwargs.pop
    - datetime.timedelta.tree._terminate
    - folder.strip
    - urllib.parse.urlunsplit
    - cls.re_unsafe_protocol.match
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.tree.object.head.commit.resolve
    - subprocess.Popen.rstrip
    - git.cmd.Git.check_unsafe_protocols
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - git.cmd.Popen.tree.wait
    - git.repo.base.Repo.clone_from
    - git.util.CallableRemoteProgress.update
    - git.cmd.Popen.tree.resolve
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - typing.cast.head.commit.tree.dereference_recursive
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.cast.object.tree.rstrip
    - <builtin>.hasattr
    - os.path.relpath
    - typing.BinaryIO.tree.rstrip
    - typing.IO
    - typing.cast.tree.object.terminate
    - git.cmd.handle_process_output
    - os.path.isabs
    - git.util.is_cygwin_git
    - git.remote.to_progress_instance
    - subprocess.Popen.tree._terminate
    - typing.cast.tree.object.working_tree_dir.replace
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - typing.IO.tree._terminate
    - typing.BinaryIO.tree.head.ref.log_entry
    - typing.cast.tree.stdin.close
    - subprocess.Popen.tree.stdin.close
    - typing.IO.tree.stderr.close
    - line.decode
    - typing.cast.config_writer
    - git.cmd.Popen.stdin.close
    - subprocess.Popen
    - git.objects.submodule.util.sm_name
    - datetime.timedelta.encode
    - datetime.timedelta.terminate
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - typing.cast.object.head.commit.tree.stdin.close
    - git.repo.base.Repo._get_config_path
    - git.util.CallableRemoteProgress.__init__
    - typing.cast.object.head.commit.tree.rstrip
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - os.path.split
    - subprocess.Popen.tree.rstrip
    - typing.cast.object.head.commit.stdin.close
    - typing.cast.object.stderr.close
    - default_args.extend
    - git.util.LockFile._lock_file_path
    - fp.write
    - typing.BinaryIO.stdout.close
    - git.cmd.Popen.head.ref.log_entry
    - typing.BinaryIO._terminate
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.dereference_recursive
    - typing.cast.tree.encode
    - pathlib.Path.read_text
    - res.append
    - typing.BinaryIO.dereference_recursive
    - typing.BinaryIO.terminate
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - datetime.timedelta.stdout.close
    - git.objects.submodule.base.Submodule.iter_items
    - typing.cast.object.head.commit.poll
    - default_args.append
    - git.repo.fun.to_commit
    - typing.cast.clone
    - typing.cast.tree.head.reference.tracking_branch
    - typing.cast.tree.terminate
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.cast.object.wait
    - typing.IO.re_hexsha_shortened.match
    - typing.BinaryIO.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.util.LockFile._has_lock
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.merge_base
    - typing.IO.tree.dereference_recursive
    - git.util.LockFile._obtain_lock
    - git.util.cygpath
    - typing.cast.object.head.reference.tracking_branch
    - typing.cast.merge_base
    - os.path.dirname
    - subprocess.Popen.head.log_append
    - git.cmd.Popen.wait
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.head.commit.poll
    - datetime.timedelta.tree.head.log_append
    - urllib.parse.urlsplit.netloc.replace
    - typing.cast.object.head.commit.tree.config_writer
    - typing.cast.object.head.commit.tree.resolve
    - typing.IO.tree.poll
    - kwargs.get
    - git.objects.submodule.util.mkhead
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.head.commit._terminate
    - datetime.timedelta.tree.poll
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - p.upper
    - typing.cast.object.dereference_recursive
    - typing.cast.git.checkout
    - typing.cast.checkout
    - os.path.isfile
    - typing.cast.head.commit.tree.resolve
    - typing.cast.object.head.log_append
    - typing.cast.object.head.commit.stderr.close
    - <builtin>.tuple
    - git.objects.submodule.util.sm_section
    - <builtin>.len
    - git.repo.fun.find_submodule_git_dir
    - os.path.join
    - datetime.timedelta.head.ref.log_entry
    - git.cmd.Git.check_unsafe_options
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.cast.working_tree_dir.replace
    - typing.cast.head.commit.terminate
    - typing.IO.tree.stdout.close
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - shlex.split
    - typing.cast.tree.object.resolve
    - kwargs.keys
    - git.repo.fun.short_to_long
    - regex.match
    - typing.BinaryIO.encode
    - fpath.upper
    - typing.cast.tree.object.git.checkout
    - typing.cast.head.commit.re_hexsha_shortened.match
    - <builtin>.str
    - typing.cast.object.stdout.close
    - <builtin>.int
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - typing.cast.object.head.set_reference
    - git.objects.submodule.base.Submodule._clone_repo
    - typing.cast.object.working_tree_dir.replace
    - typing.cast.head.commit.tree.stderr.close
    - typing.IO.head.ref.log_entry
    - pathlib.Path
    - datetime.timedelta
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.tree.head.commit._terminate
    - typing.cast.tree.working_tree_dir.replace
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.tree.head.commit.terminate
    - typing.IO.tree.terminate
    - subprocess.Popen.tree.resolve
    - typing.BinaryIO.tree._terminate
    - git.repo.fun.rev_parse
    - typing.BinaryIO.resolve
    - git.cmd.Popen.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.rstrip
    - typing.IO._terminate
    - typing.cast.stderr.close
    - <builtin>.open
    - typing.cast.object.head.commit.resolve
    - subprocess.Popen._terminate
    - git.refs.reference.Reference.set_object
    - typing.cast.tree.stderr.read
    - typing.cast.is_dirty
    - os.environ.get
    - datetime.timedelta.tree.stdout.close
    - git.cmd.Popen.tree.poll
    - typing.cast.object.head.reference.set_tracking_branch
    - gitdb.util.bin_to_hex
    - PATHEXT.split
    - index.entry_key
    - subprocess.Popen.resolve
    - typing.cast.head.commit.tree.stdout.close
    - typing.cast.tree.object.head.reset
    - datetime.timedelta.tree.wait
    - path.startswith
    - typing.cast.head.commit.tree.encode
    - typing.cast.object.tree.stdout.close
    - kwargs.items
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.tree.object.head.reference.set_tracking_branch
    - subprocess.Popen.tree.head.log_append
    - typing.IO.stdin.close
    - git.cmd.Popen.tree.head.ref.log_entry
    - git.util._is_cygwin_git
    - subprocess.Popen.tree.dereference_recursive
    - configparser.RawConfigParser._dict
    - typing.cast.object.head.commit.terminate
    - section.strip
    - typing.IO.tree.rstrip
    - typing.cast.head.commit.stderr.close
    - git.cmd.Git.update_environment
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - typing.cast.object.head.commit.tree.merge_base
    - configparser.RawConfigParser.getboolean
    - typing.cast.environment
    - <builtin>.super
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.IO.tree.stderr.read
    - typing.cast.tree.object.config_writer
    - t.start
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.stderr.close
    - typing.cast.tree.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.git.checkout
    - git.objects.submodule.base.Submodule._sio_modules
    - url.startswith
    - typing.IO.tree.resolve
    - git.cmd.Popen.rstrip
    - datetime.timedelta.poll
    - <builtin>.ValueError
    - typing.cast.object.tree._terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - os.path.expandvars
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.is_dirty
    - git.cmd.Popen
    - os.path.exists
    - typing.cast.head.commit.stdout.close
    - git.util.py_where
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - configparser.RawConfigParser.has_option
    - typing.BinaryIO.stderr.read
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.stdin.close
    - Object.new_from_sha
    - typing.cast.re_hexsha_shortened.match
    - git.repo.base.Repo._get_untracked_files
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - os.remove
    - typing.BinaryIO.tree.head.log_append
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.rstrip
    - typing.BinaryIO.tree.terminate
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.stderr.read
    - git.repo.base.Repo.merge_base
    - filename.encode
    - typing.cast.tree.stdout.close
    - untracked_files.append
    - typing.cast.stdin.close
    - <builtin>.issubclass
    - os.path.normpath
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - typing.cast.object.tree.terminate
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.BinaryIO.tree.stderr.close
    - new_cmdline.append
    - typing.cast.head.set_reference
    - os.path.expanduser
    - typing.cast.odb.partial_to_complete_sha_hex
    - os.getenv
    - typing.cast.tree.head.reference.set_tracking_branch
    - typing.BinaryIO.rstrip
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - os.stat
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - typing.BinaryIO.stderr.close
    - typing.cast.object.head.commit.tree.stdout.close
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - rev.startswith
    - datetime.timedelta.tree.terminate
    - typing.cast.head.commit.tree.wait
    - git.util.to_native_path_linux
    - typing.cast.head.commit.resolve
    - git.util.py_where.is_exec
    - git.repo.base.Repo._clone
    - git.config.get_config_path
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.stdout.close
    - git.cmd.Git.is_cygwin
    - git.objects.base.Object.__init__
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - match.group
    - subprocess.Popen.wait
    - git.repo.fun.is_git_dir
    - typing.IO.tree.re_hexsha_shortened.match
    linkageType: pythonLinkage
    raised:
    - OSError
    - RepositoryDirtyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: remote.fetch
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.rmdir
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - remotes
    - branch_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 53
    functionName: git.objects.submodule.util.find_first_remote_branch
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - repo
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 48
    functionName: git.objects.submodule.util.mkhead
    functionSourceFile: git.objects.submodule.util
    functionUses: 2
    functionsReached:
    - <builtin>.str
    - git.refs.symbolic.SymbolicReference.to_full_path
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b0dbd30>
    argNames:
    - self
    - object
    - logmsg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: git.refs.reference.Reference.set_object
    functionSourceFile: git.refs.reference
    functionUses: 1
    functionsReached:
    - git.cmd.Popen.head.log_append
    - typing.BinaryIO.head.log_append
    - datetime.timedelta.tree.head.log_append
    - subprocess.Popen.head.log_append
    - <builtin>.super
    - typing.cast.object.tree.head.log_append
    - typing.IO.head.log_append
    - typing.cast.head.log_append
    - typing.IO.tree.head.log_append
    - typing.cast.tree.head.log_append
    - subprocess.Popen.tree.head.log_append
    - typing.cast.object.head.log_append
    - datetime.timedelta.head.log_append
    - git.cmd.Popen.tree.head.log_append
    - typing.BinaryIO.tree.head.log_append
    - typing.cast.tree.object.head.log_append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.reference.set_tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.reference.set_tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.reference.set_tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.reference.set_tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.reference.tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.reference.tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.reference.tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.reference.tracking_branch
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.merge_base
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.merge_base
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.merge_base
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.merge_base
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.is_dirty
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.is_dirty
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.is_dirty
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.is_dirty
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.is_dirty
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.reset
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: git.objects.submodule.base.Submodule
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - git.util.unbare_repo
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 8
    IfCount: 13
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b52b0a0>
    - <ast.Constant object at 0x7fab5b52b9a0>
    argNames:
    - self
    - module_path
    - configuration
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 968
    functionName: git.objects.submodule.base.Submodule.move
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - <builtin>.open
    - os.environ.get
    - typing.cast.config_writer
    - git.repo.base.Repo._get_config_path
    - path.startswith
    - pw.rename_section
    - git.util.join_path_native
    - weakref.ref
    - git.objects.submodule.base.Submodule._need_gitfile_submodules
    - git.util.LockFile._lock_file_path
    - fp.write
    - git.objects.submodule.base.Submodule._config_parser_constrained
    - configparser.RawConfigParser._dict
    - git.types.assert_never
    - <builtin>.isinstance
    - git.objects.submodule.base.Submodule._write_git_file_and_module_config
    - <builtin>.super
    - typing.cast.tree.object.config_writer
    - typing.cast.object.head.commit.tree.index.entry_key
    - typing.cast.tree.config_writer
    - git.objects.submodule.base.Submodule._sio_modules
    - writer.set_value
    - typing.cast.object.index.entry_key
    - working_tree_linux.rstrip
    - typing.cast.tree.index.entry_key
    - b.startswith
    - typing.cast.object.config_writer
    - <builtin>.ValueError
    - configparser.RawConfigParser.__init__
    - os.renames
    - git.objects.submodule.base.Submodule.module
    - path.endswith
    - git.util.LockFile._has_lock
    - git.util.LockFile._obtain_lock
    - os.path.exists
    - git.objects.submodule.base.Submodule.config_writer
    - git.util.join_path
    - os.listdir
    - pw.has_section
    - typing.cast.object.head.commit.tree.config_writer
    - os.remove
    - typing.cast.tree.object.index.entry_key
    - os.rmdir
    - git.repo.base.Repo.config_writer
    - os.path.isfile
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.config.GitConfigParser.__init__
    - git.objects.submodule.util.sm_section
    - <builtin>.len
    - os.path.join
    - git.objects.submodule.base.Submodule._module_abspath
    - git.objects.submodule.base.Submodule._to_relative_path
    - typing.cast.index.entry_key
    - typing.cast.working_tree_dir.replace
    - path.replace
    - os.path.normpath
    - os.path.islink
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.config.GitConfigParser._acquire_lock
    - cw.rename_section
    - git.objects.submodule.base.Submodule.rename
    - git.util.LockFile.__init__
    - os.path.expanduser
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    - git.config.SectionConstraint.__init__
    - git.util.to_native_path_windows
    - git.repo.base.Repo.has_separate_working_tree
    - uuid.uuid4
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.tree.working_tree_dir.replace
    - os.path.relpath
    - <builtin>.hasattr
    - git.util.to_native_path_linux
    - git.config.get_config_path
    - os.path.isabs
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.index.entry_key
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.index.entry_key
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.index.entry_key
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.index.entry_key
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.index.entry_key
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.listdir
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.islink
    functionSourceFile: os
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.renames
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b0c4190>
    - <ast.Constant object at 0x7fab5b0c4040>
    argNames:
    - self
    - index
    - write
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1314
    functionName: git.objects.submodule.base.Submodule.config_writer
    functionSourceFile: git.objects.submodule.base
    functionUses: 3
    functionsReached:
    - weakref.ref
    - <builtin>.super
    - git.objects.submodule.base.Submodule._config_parser
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.objects.submodule.base.Submodule._sio_modules
    - git.config.SectionConstraint.__init__
    - git.objects.submodule.util.sm_section
    - io.BytesIO
    - os.path.join
    - git.objects.submodule.base.Submodule._config_parser_constrained
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - new_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1349
    functionName: git.objects.submodule.base.Submodule.rename
    functionSourceFile: git.objects.submodule.base
    functionUses: 1
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.LockFile.__init__
    - <builtin>.super
    - cw.rename_section
    - os.path.expanduser
    - typing.cast.tree.object.config_writer
    - <builtin>.open
    - typing.cast.tree.config_writer
    - os.environ.get
    - typing.cast.config_writer
    - git.objects.submodule.base.Submodule._sio_modules
    - writer.set_value
    - io.BytesIO
    - <builtin>.str
    - pw.has_section
    - typing.cast.object.head.commit.tree.config_writer
    - git.util.LockFile._obtain_lock_or_raise
    - typing.cast.object.config_writer
    - os.remove
    - git.repo.base.Repo._get_config_path
    - git.repo.base.Repo.config_writer
    - <builtin>.ValueError
    - pw.rename_section
    - typing.cast.object.working_tree_dir.replace
    - git.config.SectionConstraint.__init__
    - weakref.ref
    - configparser.RawConfigParser.__init__
    - git.repo.base.Repo.has_separate_working_tree
    - git.objects.submodule.base.Submodule._need_gitfile_submodules
    - os.path.isfile
    - uuid.uuid4
    - git.objects.submodule.base.Submodule._config_parser
    - os.renames
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - git.objects.submodule.base.Submodule.module
    - typing.cast
    - git.config.GitConfigParser.__init__
    - git.util.LockFile._lock_file_path
    - typing.cast.tree.working_tree_dir.replace
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.objects.submodule.util.sm_section
    - fp.write
    - os.path.join
    - os.path.relpath
    - git.util.to_native_path_linux
    - <builtin>.hasattr
    - git.util.LockFile._has_lock
    - configparser.RawConfigParser._dict
    - git.objects.submodule.base.Submodule._module_abspath
    - git.objects.submodule.base.Submodule._config_parser_constrained
    - git.util.LockFile._obtain_lock
    - git.types.assert_never
    - git.objects.submodule.base.Submodule.config_writer
    - git.config.get_config_path
    - typing.cast.working_tree_dir.replace
    - <builtin>.isinstance
    - os.path.normpath
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.config.GitConfigParser._acquire_lock
    - git.objects.submodule.base.Submodule._write_git_file_and_module_config
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 13
    IfCount: 15
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad0e5b0>
    - <ast.Constant object at 0x7fab5ad0e070>
    - <ast.Constant object at 0x7fab5ad0edc0>
    - <ast.Constant object at 0x7fab5ad0ef10>
    argNames:
    - self
    - module
    - force
    - configuration
    - dry_run
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1088
    functionName: git.objects.submodule.base.Submodule.remove
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - <builtin>.open
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - os.environ.get
    - typing.cast.config_writer
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - typing.cast.tree.index.write
    - gitdb.utils.encoding.force_bytes
    - typing.cast.head.commit.stderr.read
    - git.objects.commit.Commit._iter_from_process_or_stream
    - git.repo.base.Repo._get_config_path
    - index.entry_key
    - datetime.timedelta.tree.wait
    - weakref.ref
    - git.util.finalize_process
    - typing.cast.tree.wait
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - default_args.extend
    - git.util.LockFile._lock_file_path
    - git.objects.commit.Commit.__init__
    - git.objects.submodule.base.Submodule._config_parser_constrained
    - out_list.extend
    - configparser.RawConfigParser._dict
    - git.util.rmtree
    - git.types.assert_never
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - typing.cast.object.head.commit.tree.index.entry_key
    - typing.cast.tree.object.config_writer
    - typing.cast.tree.config_writer
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.cast.object.index.entry_key
    - typing.BinaryIO.tree.wait
    - <builtin>.delattr
    - typing.cast.tree.index.entry_key
    - git.objects.submodule.base.Submodule.iter_items
    - typing.IO.wait
    - b.startswith
    - git.repo.base.Repo.is_dirty
    - typing.cast.object.config_writer
    - default_args.append
    - <builtin>.ValueError
    - line.strip
    - configparser.RawConfigParser.__init__
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - git.objects.submodule.base.Submodule.module
    - typing.cast.diff
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - configparser.RawConfigParser.sections
    - path.endswith
    - typing.cast.tree.object.readline
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.object.wait
    - typing.cast.tree.stdout.readline
    - git.util.LockFile._has_lock
    - args_list.extend
    - typing.cast.object.stderr.read
    - os.path.exists
    - git.util.LockFile._obtain_lock
    - git.objects.submodule.base.Submodule.config_writer
    - git.util.join_path
    - gcp_writer.remove_section
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.cast.object.head.commit.tree.index.write
    - typing.cast.wait
    - typing.BinaryIO.stderr.read
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - shutil.rmtree
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - git.repo.base.Repo._get_untracked_files
    - datetime.timedelta.stderr.read
    - os.path.isdir
    - typing.cast.object.head.commit.tree.config_writer
    - typing.cast.index.write
    - repo.commit
    - os.remove
    - typing.cast.tree.object.index.entry_key
    - typing.cast.object.readline
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.tree.git.rev_list
    - git.repo.base.Repo.config_writer
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - csm.remove
    - os.path.isfile
    - <builtin>.tuple
    - git.objects.submodule.util.SubmoduleConfigParser.set_submodule
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - git.config.GitConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - git.objects.submodule.util.sm_section
    - <builtin>.len
    - os.path.join
    - repo.config_reader
    - typing.cast.object.head.commit.stderr.read
    - typing.cast.cherry
    - filename.encode
    - typing.cast.index.entry_key
    - untracked_files.append
    - os.path.normpath
    - typing.BinaryIO.wait
    - os.path.islink
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - git.config.GitConfigParser._acquire_lock
    - git.objects.submodule.base.Submodule.children
    - subprocess.Popen.stderr.read
    - typing.cast.status
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.tree.wait
    - typing.cast.object.head.commit.tree.readline
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - typing.cast.tree.object.index.write
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - git.objects.submodule.base.Submodule._get_intermediate_items
    - git.objects.submodule.base.Submodule._clear_cache
    - git.config.SectionConstraint.__init__
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - typing.cast.object.tree.stderr.read
    - git.objects.submodule.base.Submodule._config_parser
    - sc_writer.remove_section
    - line.startswith
    - git.remote.PushInfo.iter_items
    - git.objects.submodule.base.Submodule.module_exists
    - gc.collect
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - git.config.get_config_path
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - typing.cast.object.index.write
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InvalidGitRepositoryError
    - AssertionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1558
    functionName: git.objects.submodule.base.Submodule.children
    functionSourceFile: git.objects.submodule.base
    functionUses: 1
    functionsReached:
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - datetime.timedelta.tree.stderr.read
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - typing.cast.git.rev_list
    - git.objects.submodule.util.sm_name
    - gitdb.utils.encoding.force_bytes
    - git.objects.commit.Commit._iter_from_process_or_stream
    - typing.cast.head.commit.stderr.read
    - index.entry_key
    - datetime.timedelta.tree.wait
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - typing.cast.tree.object.stderr.read
    - typing.cast.stdout.readline
    - git.objects.commit.Commit.__init__
    - out_list.extend
    - git.remote.Remote.iter_items
    - section.find
    - <builtin>.isinstance
    - section.strip
    - gitdb.util.hex_to_bin
    - section.rfind
    - typing.cast.rev_list
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.IO.tree.stderr.read
    - git.objects.submodule.base.Submodule._sio_modules
    - typing.BinaryIO.tree.wait
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.IO.wait
    - line.strip
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - git.objects.submodule.base.Submodule.module
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.cast.object.wait
    - path.endswith
    - typing.cast.object.head.commit.tree.stderr.read
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - typing.cast.tree.object.wait
    - args_list.extend
    - typing.cast.object.stderr.read
    - git.util.join_path
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.util.IterableList.__init__
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - line.split
    - datetime.timedelta.stderr.read
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - typing.cast.object.stdout.readline
    - typing.cast.stderr.read
    - <builtin>.tuple
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - <builtin>.len
    - repo.config_reader
    - os.path.join
    - typing.cast.object.head.commit.stderr.read
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - typing.cast.readline
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.object.tree.wait
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.cast.tree.object.head.commit.stderr.read
    - git.objects.submodule.base.Submodule._get_intermediate_items
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.wait
    - git.objects.submodule.base.Submodule._config_parser
    - typing.cast.object.tree.stderr.read
    - git.remote.PushInfo.iter_items
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - section.startswith
    - _logger.debug
    - subprocess.Popen.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csm.remove
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1427
    functionName: git.objects.submodule.base.Submodule.module_exists
    functionSourceFile: git.objects.submodule.base
    functionUses: 1
    functionsReached:
    - git.objects.submodule.base.Submodule.module
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.cherry
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.index.write
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.index.write
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.index.write
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.index.write
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.index.write
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gcp_writer.remove_section
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sc_writer.remove_section
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b188c10>
    argNames:
    - self
    - commit
    - check
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1260
    functionName: git.objects.submodule.base.Submodule.set_parent_commit
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - configparser.RawConfigParser.has_section
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - <builtin>.super
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.commit
    - git.objects.submodule.base.Submodule._sio_modules
    - datetime.timedelta.re_hexsha_shortened.match
    - <builtin>.delattr
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.tree.commit
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.tree.object.commit
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - git.objects.submodule.util.sm_section
    - <builtin>.len
    - os.path.join
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - io.BytesIO
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - git.objects.submodule.base.Submodule._clear_cache
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - git.objects.submodule.base.Submodule._config_parser
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.commit
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.commit
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.commit
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.commit
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.commit
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pw.has_section
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pw.rename_section
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cw.rename_section
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: uuid.uuid4
    functionSourceFile: uuid
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1440
    functionName: git.objects.submodule.base.Submodule.exists
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - <builtin>.locals
    - <builtin>.hasattr
    - <builtin>.setattr
    - <builtin>.getattr
    - git.objects.submodule.base.Submodule._clear_cache
    - <builtin>.delattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.locals
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1478
    functionName: git.objects.submodule.base.Submodule.branch
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - git.refs.symbolic.SymbolicReference.to_full_path
    - <builtin>.isinstance
    - git.objects.submodule.base.Submodule.module
    - git.objects.submodule.util.mkhead
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1489
    functionName: git.objects.submodule.base.Submodule.branch_path
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1498
    functionName: git.objects.submodule.base.Submodule.branch_name
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1508
    functionName: git.objects.submodule.base.Submodule.url
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1513
    functionName: git.objects.submodule.base.Submodule.parent_commit
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.commit
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.tree.commit
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.tree.object.commit
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - rev.startswith
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.commit
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1527
    functionName: git.objects.submodule.base.Submodule.name
    functionSourceFile: git.objects.submodule.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.commit
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - section
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: git.objects.submodule.util.sm_name
    functionSourceFile: git.objects.submodule.util
    functionUses: 14
    functionsReached:
    - section.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.submodule.util
    functionSourceFile: git.objects.submodule.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: section.strip
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: weakref.ref
    functionSourceFile: weakref
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: git.objects.submodule.util.SubmoduleConfigParser.flush_to_index
    functionSourceFile: git.objects.submodule.util
    functionUses: 9
    functionsReached:
    - sm._clear_cache
    - index.add
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm._clear_cache
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index
    functionSourceFile: git.index
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.index.base
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - contextlib.contextmanager
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - directory
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: git.index.base._named_temporary_file_for_subprocess
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - os.remove
    - tempfile.NamedTemporaryFile
    - tempfile.mkstemp
    - os.close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tempfile.mkstemp
    functionSourceFile: tempfile
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.close
    functionSourceFile: os
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tempfile.NamedTemporaryFile
    functionSourceFile: tempfile
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 172
    functionName: git.index.base.IndexFile._index_path
    functionSourceFile: git.index.base
    functionUses: 5
    functionsReached:
    - git.util.join_path_native
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.to_native_path_linux
    - git.util.to_native_path_windows
    - git.util.join_path
    - b.startswith
    - typing.cast.working_tree_dir.replace
    - path.replace
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised:
    - GitCommandError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 153
    functionName: git.index.base.IndexFile._set_cache_
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - typing.NamedTuple.__init__
    - <builtin>.super
    - git.index.fun.read_header
    - os.close
    - typing.cast
    - gitdb.util.file_contents_ro.read
    - gitdb.util.file_contents_ro
    - <builtin>.len
    - struct.unpack
    - git.index.base.IndexFile._deserialize
    - git.index.fun.read_cache
    - gitdb.util.file_contents_ro.tell
    - os.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.open
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.file_contents_ro
    functionSourceFile: gitdb
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 195
    functionName: git.index.base.IndexFile._deserialize
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - gitdb.util.file_contents_ro.tell
    - typing.NamedTuple.__init__
    - git.index.fun.read_header
    - typing.cast
    - gitdb.util.file_contents_ro.read
    - struct.unpack
    - git.index.fun.read_cache
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 179
    functionName: git.index.base.IndexFile.path
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 183
    functionName: git.index.base.IndexFile._delete_entries_cache
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - stream
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 238
    functionName: git.index.fun.read_cache
    functionSourceFile: git.index.fun
    functionUses: 2
    functionsReached:
    - gitdb.util.file_contents_ro.tell
    - typing.NamedTuple.__init__
    - git.index.fun.read_header
    - typing.cast
    - gitdb.util.file_contents_ro.read
    - struct.unpack
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 200
    functionName: git.index.base.IndexFile._entries_sorted
    functionSourceFile: git.index.base
    functionUses: 8
    functionsReached:
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.base.IndexFile._entries_sorted.<lambda1>
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b2ab100>
    argNames:
    - self
    - stream
    - ignore_extension_data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 204
    functionName: git.index.base.IndexFile._serialize
    functionSourceFile: git.index.base
    functionUses: 5
    functionsReached:
    - git.index.fun.write_cache
    - stream_sha.write_sha
    - git.index.base.IndexFile._entries_sorted
    - gitdb.util.make_sha
    - gitdb.utils.encoding.force_bytes
    - struct.pack
    - <builtin>.sorted
    - stream_sha.write
    - <builtin>.len
    - <builtin>.str
    - git.util.IndexFileSHA1Writer.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 10
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ae5c280>
    - <ast.Name object at 0x7fab5ae5c190>
    argNames:
    - entries
    - stream
    - extension_data
    - ShaStreamCls
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 132
    functionName: git.index.fun.write_cache
    functionSourceFile: git.index.fun
    functionUses: 6
    functionsReached:
    - stream_sha.write_sha
    - gitdb.util.make_sha
    - gitdb.utils.encoding.force_bytes
    - struct.pack
    - stream_sha.write
    - <builtin>.len
    - <builtin>.str
    - git.util.IndexFileSHA1Writer.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b2ab850>
    - <ast.Constant object at 0x7fab5b2abf10>
    argNames:
    - self
    - file_path
    - ignore_extension_data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 214
    functionName: git.index.base.IndexFile.write
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - gitdb.util.LockedFD
    - git.index.fun.write_cache
    - stream_sha.write_sha
    - git.index.base.IndexFile._entries_sorted
    - gitdb.util.make_sha
    - gitdb.utils.encoding.force_bytes
    - gitdb.util.LockedFD.commit
    - struct.pack
    - <builtin>.sorted
    - git.util.IndexFileSHA1Writer.__init__
    - gitdb.util.LockedFD.rollback
    - git.index.base.IndexFile._serialize
    - stream_sha.write
    - <builtin>.len
    - <builtin>.str
    - gitdb.util.LockedFD.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.LockedFD
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.LockedFD.open
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.LockedFD.rollback
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.LockedFD.commit
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: git.index.base.IndexFile
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - git.util.unbare_repo
    - functools.wraps
    - git.index.util.git_working_dir
    - git.index.util.post_clear_cache
    - git.index.util.default_index
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: git.index.util.post_clear_cache
    functionSourceFile: git.index.util
    functionUses: 1
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: git.index.util.default_index
    functionSourceFile: git.index.util
    functionUses: 1
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b732e20>
    argNames:
    - self
    - rhs
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 256
    functionName: git.index.base.IndexFile.merge_tree
    functionSourceFile: git.index.base
    functionUses: 2
    functionsReached:
    - args.append
    - typing.cast.read_tree
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.read_tree
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - tree_sha
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 292
    functionName: git.index.base.IndexFile.new
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - out.append
    - typing.cast.tree.object.working_tree_dir.replace
    - trees_data.append
    - git.index.fun.aggressive_tree_merge
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.enumerate
    - entries.extend
    - git.objects.fun._find_by_name
    - git.objects.fun.traverse_trees_recursive
    - <builtin>.dict
    - <builtin>.str
    - typing.NamedTuple.__init__
    - b.startswith
    - out.extend
    - git.index.typ.IndexEntry.from_base
    - entries.append
    - git.objects.fun._to_full_path
    - gitdb.util.to_bin_sha
    - typing.cast.object.working_tree_dir.replace
    - git.util.join_path_native
    - git.util.to_native_path_windows
    - <builtin>.tuple
    - git.index.base.IndexFile.__init__
    - git.index.base.IndexFile._index_path
    - struct.pack
    - odb.stream
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - git.compat.safe_decode
    - <builtin>.len
    - git.util.to_native_path_linux
    - <builtin>.range
    - s.decode
    - git.util.join_path
    - typing.cast.working_tree_dir.replace
    - <builtin>.isinstance
    - path.replace
    - <builtin>.zip
    - git.objects.fun.traverse_tree_recursive
    - stat.S_ISDIR
    - git.objects.fun.tree_entries_from_data
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.index.fun._tree_entry_to_baseindexentry
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.to_bin_sha
    functionSourceFile: gitdb
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 16
    IfCount: 13
    argCount: 2
    argDefaultValues: []
    argNames:
    - odb
    - tree_shas
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 366
    functionName: git.index.fun.aggressive_tree_merge
    functionSourceFile: git.index.fun
    functionUses: 1
    functionsReached:
    - trees_data.append
    - <builtin>.list
    - <builtin>.ord
    - <builtin>.enumerate
    - entries.extend
    - git.objects.fun._find_by_name
    - git.objects.fun.traverse_trees_recursive
    - typing.NamedTuple.__init__
    - out.extend
    - entries.append
    - git.objects.fun._to_full_path
    - <builtin>.tuple
    - odb.stream
    - git.compat.safe_decode
    - <builtin>.len
    - <builtin>.range
    - s.decode
    - git.index.fun._tree_entry_to_baseindexentry
    - <builtin>.isinstance
    - git.objects.fun.traverse_tree_recursive
    - stat.S_ISDIR
    - git.objects.fun.tree_entries_from_data
    - out.append
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - base
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: git.index.typ.IndexEntry.from_base
    functionSourceFile: git.index.typ
    functionUses: 2
    functionsReached:
    - struct.pack
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - treeish
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 324
    functionName: git.index.base.IndexFile.from_tree
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - arg_list.extend
    - git.index.util.TemporaryFileSwap.__init__
    - git.index.base._named_temporary_file_for_subprocess
    - <builtin>.str
    - os.replace
    - b.startswith
    - os.remove
    - tempfile.NamedTemporaryFile
    - typing.cast.object.working_tree_dir.replace
    - git.util.join_path_native
    - git.util.to_native_path_windows
    - os.path.split
    - git.index.base.IndexFile.__init__
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - os.close
    - arg_list.append
    - <builtin>.len
    - contextlib.suppress
    - git.util.to_native_path_linux
    - repo.git.read_tree
    - git.util.join_path
    - typing.cast.working_tree_dir.replace
    - path.replace
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.index.base.IndexFile._index_path
    - tempfile.mkstemp
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arg_list.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arg_list.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file_path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: git.index.util.TemporaryFileSwap.__init__
    functionSourceFile: git.index.util
    functionUses: 1
    functionsReached:
    - contextlib.suppress
    - os.path.split
    - os.close
    - os.replace
    - tempfile.mkstemp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: repo.git.read_tree
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - paths
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 394
    functionName: git.index.base.IndexFile._iter_expand_paths
    functionSourceFile: git.index.base
    functionUses: 3
    functionsReached:
    - git.index.base.IndexFile._iter_expand_paths
    - os.lstat
    - os.path.exists
    - glob.glob
    - abs_path.replace
    - os.walk
    - os.path.isabs
    - stat.S_ISLNK
    - <builtin>.str
    - root.replace
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - e
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 404
    functionName: git.index.base.IndexFile._iter_expand_paths.raise_exc
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.lstat
    functionSourceFile: os
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stat.S_ISLNK
    functionSourceFile: stat
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: abs_path.replace
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: glob.glob
    functionSourceFile: glob
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.walk
    functionSourceFile: os
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: root.replace
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b727d00>
    argNames:
    - self
    - proc
    - filepath
    - item
    - fmakeexc
    - fprogress
    - read_from_stdout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 453
    functionName: git.index.base.IndexFile._write_path_to_stdin
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - git.index.base.IndexFile.<lambda3>
    - proc.stdout.readline
    - proc.stdin.write
    - proc.stdin.flush
    linkageType: pythonLinkage
    raised:
    - fmakeexc
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.base.IndexFile.<lambda3>
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stdin.write
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stdin.flush
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: proc.stdout.readline
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Lambda object at 0x7fab5b0db6a0>
    argNames:
    - self
    - predicate
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 501
    functionName: git.index.base.IndexFile.iter_blobs
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - git.index.base.IndexFile.<lambda1>
    - entry.to_blob
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entry.to_blob
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.base.IndexFile.<lambda1>
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 522
    functionName: git.index.base.IndexFile.unmerged_blobs
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - line.sort
    - path_map.values
    - entry.to_blob
    - git.index.base.IndexFile.<lambda1>
    - git.index.base.IndexFile.iter_blobs
    - path_map.setdefault
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.base.IndexFile.unmerged_blobs.<lambda1>
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path_map.setdefault
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path_map.values
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.sort
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - entry
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 544
    functionName: git.index.base.IndexFile.entry_key
    functionSourceFile: git.index.base
    functionUses: 3
    functionsReached:
    - git.index.base.IndexFile.entry_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - iter_blobs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 547
    functionName: git.index.base.IndexFile.resolve_blobs
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - struct.pack
    - typing.NamedTuple.__init__
    - git.index.typ.IndexEntry.from_blob
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b787b80>
    argNames:
    - cls
    - blob
    - stage
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: git.index.typ.IndexEntry.from_blob
    functionSourceFile: git.index.typ
    functionUses: 5
    functionsReached:
    - struct.pack
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 586
    functionName: git.index.base.IndexFile.update
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - git.index.base.IndexFile._delete_entries_cache
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 601
    functionName: git.index.base.IndexFile.write_tree
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - gitdb.db.MemoryDB.store
    - io.BytesIO.seek
    - entry.path.find
    - git.index.base.IndexFile._entries_sorted
    - <builtin>.ord
    - <builtin>.sorted
    - tree_items.append
    - io.BytesIO
    - io.BytesIO.getvalue
    - io.BytesIO.write
    - gitdb.base.IStream
    - <builtin>.slice
    - gitdb.db.MemoryDB.sha_iter
    - gitdb.db.MemoryDB.stream_copy
    - <builtin>.len
    - <builtin>.bytes
    - <builtin>.range
    - <builtin>.isinstance
    - name.encode
    - git.index.fun.write_tree_from_cache
    - oentry.path.find
    - gitdb.db.MemoryDB
    - git.objects.fun.tree_to_stream
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.db.MemoryDB
    functionSourceFile: gitdb
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.slice
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b8a99a0>
    argNames:
    - entries
    - odb
    - sl
    - si
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 293
    functionName: git.index.fun.write_tree_from_cache
    functionSourceFile: git.index.fun
    functionUses: 2
    functionsReached:
    - gitdb.db.MemoryDB.store
    - io.BytesIO.seek
    - entry.path.find
    - <builtin>.range
    - <builtin>.slice
    - io.BytesIO.write
    - <builtin>.ord
    - <builtin>.isinstance
    - name.encode
    - <builtin>.bytes
    - oentry.path.find
    - git.index.fun.write_tree_from_cache
    - git.objects.fun.tree_to_stream
    - gitdb.base.IStream
    - tree_items.append
    - io.BytesIO
    - <builtin>.len
    - io.BytesIO.getvalue
    linkageType: pythonLinkage
    raised:
    - UnmergedEntriesError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.db.MemoryDB.sha_iter
    functionSourceFile: gitdb
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.db.MemoryDB.stream_copy
    functionSourceFile: gitdb
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.index
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.pop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 644
    functionName: git.index.base.IndexFile._to_relative_path
    functionSourceFile: git.index.base
    functionUses: 9
    functionsReached:
    - os.path.isabs
    - <builtin>.str
    - os.path.relpath
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - items
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 660
    functionName: git.index.base.IndexFile._preprocess_add_items
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - typing.NamedTuple.__init__
    - git.index.base.IndexFile._to_relative_path
    - <builtin>.isinstance
    - paths.append
    - entries.append
    - struct.pack
    - os.path.isabs
    - git.index.typ.BaseIndexEntry.from_blob
    - git.index.typ.IndexEntry.from_blob
    - <builtin>.str
    - os.path.relpath
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: paths.append
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b2f8730>
    argNames:
    - cls
    - blob
    - stage
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 138
    functionName: git.index.typ.BaseIndexEntry.from_blob
    functionSourceFile: git.index.typ
    functionUses: 4
    functionsReached:
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entries.append
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - filepath
    - fprogress
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 682
    functionName: git.index.base.IndexFile._store_path
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - git.util.to_native_path_linux
    - typing.cast.tree.object.working_tree_dir.replace
    - os.lstat
    - typing.NamedTuple.__init__
    - stat.S_IFMT
    - typing.cast.working_tree_dir.replace
    - <builtin>.open
    - stat.S_ISLNK
    - gitdb.base.IStream
    - git.index.fun.stat_mode_to_index_mode
    - typing.cast.tree.working_tree_dir.replace
    - stat.S_ISDIR
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.index.base.IndexFile._store_path.<lambda2>
    - git.index.base.IndexFile.<lambda2>
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.index.base.IndexFile._store_path.<lambda1>
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - gitdb.utils.encoding.force_bytes
    - os.readlink
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.readlink
    functionSourceFile: os
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.index.base.IndexFile._store_path.<lambda2>
    functionSourceFile: git.index.base
    functionUses: 5
    functionsReached:
    - <builtin>.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.base.IndexFile.<lambda2>
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.base.IStream
    functionSourceFile: gitdb
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - mode
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: git.index.fun.stat_mode_to_index_mode
    functionSourceFile: git.index.fun
    functionUses: 5
    functionsReached:
    - stat.S_ISLNK
    - stat.S_IFMT
    - stat.S_ISDIR
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: git.index.util.git_working_dir
    functionSourceFile: git.index.util
    functionUses: 2
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - paths
    - path_rewriter
    - fprogress
    - entries
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 711
    functionName: git.index.base.IndexFile._entries_for_paths
    functionSourceFile: git.index.base
    functionUses: 2
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - <builtin>.open
    - abs_path.replace
    - git.index.typ.IndexEntry.from_blob
    - git.index.base.IndexFile._store_path
    - <builtin>.str
    - typing.NamedTuple.__init__
    - glob.glob
    - entries.append
    - os.stat
    - gitdb.base.IStream
    - git.index.typ.BaseIndexEntry.from_blob
    - git.index.base.IndexFile.<lambda2>
    - typing.cast.object.working_tree_dir.replace
    - entries_added.append
    - os.lstat
    - stat.S_IFMT
    - os.walk
    - struct.pack
    - typing.cast.tree.working_tree_dir.replace
    - git.index.base.IndexFile._store_path.<lambda2>
    - <builtin>.len
    - root.replace
    - os.path.join
    - git.util.to_native_path_linux
    - git.index.base.IndexFile._iter_expand_paths
    - os.path.exists
    - typing.cast.working_tree_dir.replace
    - os.path.isabs
    - git.index.fun.stat_mode_to_index_mode
    - stat.S_ISDIR
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - stat.S_ISLNK
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.stat
    functionSourceFile: os
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entries_added.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 7
    IfCount: 7
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b32db80>
    - <ast.Lambda object at 0x7fab5b32d3d0>
    - <ast.Constant object at 0x7fab5b32d040>
    - <ast.Constant object at 0x7fab5b32dfd0>
    - <ast.Constant object at 0x7fab5b32de50>
    argNames:
    - self
    - items
    - force
    - fprogress
    - path_rewriter
    - write
    - write_extension_data
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 750
    functionName: git.index.base.IndexFile.add
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - git.index.base.IndexFile._entries_sorted
    - <builtin>.open
    - abs_path.replace
    - <builtin>.enumerate
    - <builtin>.sorted
    - git.index.typ.IndexEntry.from_blob
    - <builtin>.str
    - git.index.base.IndexFile._entries_for_paths
    - git.index.base.IndexFile._store_path
    - git.index.base.IndexFile._preprocess_add_items
    - typing.NamedTuple.__init__
    - stream_sha.write_sha
    - glob.glob
    - gitdb.utils.encoding.force_bytes
    - git.index.typ.IndexEntry.from_base
    - entries.append
    - os.stat
    - git.index.util.git_working_dir
    - gitdb.base.IStream
    - git.index.typ.BaseIndexEntry.from_blob
    - stream_sha.write
    - git.index.base.IndexFile._serialize
    - git.index.base.IndexFile.<lambda2>
    - git.util.IndexFileSHA1Writer.__init__
    - gitdb.util.LockedFD.open
    - typing.cast.object.working_tree_dir.replace
    - entries_added.append
    - gitdb.util.LockedFD
    - os.lstat
    - stat.S_IFMT
    - git.index.fun.write_cache
    - gitdb.util.make_sha
    - git.index.base.IndexFile.add.handle_null_entries
    - git.index.base.IndexFile._to_relative_path
    - struct.pack
    - os.walk
    - typing.cast.tree.working_tree_dir.replace
    - git.index.base.IndexFile._store_path.<lambda2>
    - <builtin>.len
    - entries_added.extend
    - root.replace
    - os.path.join
    - os.path.relpath
    - git.util.to_native_path_linux
    - git.index.base.IndexFile._iter_expand_paths
    - functools.wraps
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - os.path.exists
    - typing.cast.working_tree_dir.replace
    - <builtin>.isinstance
    - gitdb.util.LockedFD.commit
    - paths.append
    - os.path.isabs
    - git.index.fun.stat_mode_to_index_mode
    - git.index.base.IndexFile.write
    - stat.S_ISDIR
    - gitdb.util.LockedFD.rollback
    - stat.S_ISLNK
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entries_added.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 902
    functionName: git.index.base.IndexFile.add.handle_null_entries
    functionSourceFile: git.index.base
    functionUses: 2
    functionsReached:
    - git.util.to_native_path_linux
    - typing.cast.tree.object.working_tree_dir.replace
    - os.lstat
    - typing.NamedTuple.__init__
    - stat.S_IFMT
    - typing.cast.working_tree_dir.replace
    - <builtin>.open
    - stat.S_ISLNK
    - gitdb.base.IStream
    - git.index.fun.stat_mode_to_index_mode
    - typing.cast.tree.working_tree_dir.replace
    - stat.S_ISDIR
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.index.base.IndexFile._store_path.<lambda2>
    - <builtin>.str
    - git.index.base.IndexFile.<lambda2>
    - git.index.base.IndexFile._store_path
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - items
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 954
    functionName: git.index.base.IndexFile._items_to_rela_paths
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - git.index.base.IndexFile._to_relative_path
    - <builtin>.isinstance
    - paths.append
    - os.path.isabs
    - <builtin>.str
    - os.path.relpath
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b5e4940>
    argNames:
    - self
    - items
    - working_tree
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 977
    functionName: git.index.base.IndexFile.remove
    functionSourceFile: git.index.base
    functionUses: 2
    functionsReached:
    - git.index.base.IndexFile._items_to_rela_paths
    - git.index.base.IndexFile._to_relative_path
    - <builtin>.isinstance
    - paths.append
    - typing.cast.rm
    - args.append
    - os.path.isabs
    - <builtin>.str
    - os.path.relpath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.rm
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b530f40>
    argNames:
    - self
    - items
    - skip_errors
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1037
    functionName: git.index.base.IndexFile.move
    functionSourceFile: git.index.base
    functionUses: 2
    functionsReached:
    - <builtin>.range
    - git.index.base.IndexFile._items_to_rela_paths
    - <builtin>.int
    - git.index.base.IndexFile._to_relative_path
    - <builtin>.isinstance
    - paths.append
    - args.append
    - kwargs.pop
    - os.path.isabs
    - <builtin>.str
    - <builtin>.len
    - out.append
    - typing.cast.mv
    - os.path.relpath
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.mv
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b348940>
    - <ast.Constant object at 0x7fab5b348250>
    - <ast.Constant object at 0x7fab5b348fa0>
    - <ast.Constant object at 0x7fab5b348fd0>
    - <ast.Constant object at 0x7fab5b348850>
    - <ast.Constant object at 0x7fab5b348610>
    - <ast.Constant object at 0x7fab5b3482e0>
    argNames:
    - self
    - message
    - parent_commits
    - head
    - author
    - committer
    - author_date
    - commit_date
    - skip_hooks
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1115
    functionName: git.index.base.IndexFile.commit
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - gitdb.db.MemoryDB.store
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - <builtin>.list
    - datetime.timedelta.tree.rstrip
    - <builtin>.open
    - subprocess.Popen._terminate
    - datetime.timedelta.tree.stderr.read
    - typing.cast.object.head.commit.encode
    - subprocess.Popen.stdout.close
    - typing.IO.tree.wait
    - <builtin>.sorted
    - line.decode
    - typing.cast.tree.stderr.read
    - typing.IO.tree.stderr.close
    - tree_items.append
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.stderr.close
    - typing.cast.object.tree.poll
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - pathlib.Path.relative_to
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - git.index.base.IndexFile._remove_commit_editmsg
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - <builtin>.slice
    - gitdb.db.MemoryDB.sha_iter
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - git.index.base.IndexFile.write_tree
    - os.environ.copy
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - gitdb.db.MemoryDB
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - git.index.base.IndexFile._write_commit_editmsg
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.rstrip
    - typing.cast.object.head.commit.tree.encode
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - git.index.base.IndexFile._entries_sorted
    - typing.cast.tree.head.commit.stderr.close
    - entry.path.find
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - <builtin>.ord
    - cmdline.split
    - typing.cast.object.tree.encode
    - commit_editmsg_file.read
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.index.fun._has_file_extension
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - io.BytesIO.getvalue
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - typing.IO.wait
    - io.BytesIO.write
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - gitdb.base.IStream
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.cast.object.tree.stdout.close
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - gitdb.db.MemoryDB.stream_copy
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - git.compat.safe_decode
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - <builtin>.bytes
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.IO.encode
    - typing.cast.object.head.commit._terminate
    - git.cmd.Popen.tree.terminate
    - git.index.base.IndexFile._read_commit_editmsg
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.index.base.IndexFile._commit_editmsg_filepath
    - io.BytesIO.seek
    - git.index.fun.run_commit_hook
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - os.remove
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - os.path.splitext
    - <builtin>.len
    - os.path.join
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - gitdb.utils.encoding.force_text
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - s.decode
    - Commit.create_from_tree
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - git.objects.fun.tree_to_stream
    - typing.BinaryIO.tree.stderr.close
    - name.encode
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - io.BytesIO
    - typing.BinaryIO.rstrip
    - <builtin>.str
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - commit_editmsg_file.write
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - message.encode
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.index.fun.hook_path
    - typing.cast.tree.stdin.close
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - <builtin>.range
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - git.index.fun.write_tree_from_cache
    - oentry.path.find
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - name
    - index
    - args
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 71
    functionName: git.index.fun.run_commit_hook
    functionSourceFile: git.index.fun
    functionUses: 1
    functionsReached:
    - typing.cast.tree.object.head.commit.rstrip
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - typing.cast.object.tree.stderr.close
    - typing.IO.stderr.close
    - typing.BinaryIO.tree.encode
    - subprocess.Popen.tree.poll
    - typing.IO._terminate
    - typing.IO.tree._terminate
    - <builtin>.list
    - datetime.timedelta.tree.rstrip
    - datetime.timedelta.tree.stderr.read
    - subprocess.Popen._terminate
    - subprocess.Popen.stdout.close
    - typing.cast.object.head.commit.encode
    - typing.cast.tree.stdin.close
    - typing.IO.tree.wait
    - typing.cast.tree.stderr.read
    - line.decode
    - typing.IO.tree.stderr.close
    - datetime.timedelta.tree.stdout.close
    - <builtin>.getattr
    - git.cmd.Popen.tree._terminate
    - typing.cast.object.head.commit.tree.stderr.close
    - datetime.timedelta.encode
    - git.cmd.Popen.tree.poll
    - datetime.timedelta.terminate
    - typing.cast.stderr.close
    - typing.cast.object.tree.poll
    - threading.Thread
    - typing.cast.tree.object.head.commit.terminate
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.tree.stdin.close
    - typing.cast.head.commit.stderr.read
    - typing.cast.poll
    - typing.cast.object.poll
    - typing.cast.tree._terminate
    - pathlib.Path.relative_to
    - typing.cast.head.commit.tree.stdout.close
    - datetime.timedelta.tree.wait
    - typing.cast.head.commit.tree.encode
    - typing.cast.tree.object.head.commit.stdin.close
    - typing.cast.object.head.commit.tree.rstrip
    - git.cmd.Popen.stdout.close
    - typing.cast.object.tree.stdout.close
    - git.util.RemoteProgress.new_message_handler.handler
    - git.util.finalize_process
    - typing.cast.tree.wait
    - typing.cast.tree.head.commit.rstrip
    - git.cmd.Popen.encode
    - subprocess.Popen.tree.rstrip
    - typing.cast.tree.object.stderr.read
    - typing.cast.object.head.commit.stdin.close
    - typing.IO.stdin.close
    - os.environ.copy
    - typing.cast.object.stderr.close
    - typing.cast.tree.poll
    - git.cmd.Popen.terminate
    - typing.BinaryIO.stdout.close
    - typing.BinaryIO._terminate
    - typing.cast.object.head.commit.terminate
    - <builtin>.isinstance
    - typing.cast.tree.encode
    - typing.IO.tree.rstrip
    - typing.cast.terminate
    - typing.cast.head.commit.stderr.close
    - typing.cast.tree.head.commit.stderr.read
    - typing.cast.encode
    - typing.cast.tree.rstrip
    - typing.cast.tree.object.head.commit._terminate
    - typing.cast.object.head.commit.tree.encode
    - subprocess.Popen.tree.wait
    - typing.cast.tree.object.head.commit.poll
    - typing.BinaryIO.terminate
    - typing.cast.tree.head.commit.stderr.close
    - git.cmd.Popen._terminate
    - typing.IO.tree.stderr.read
    - subprocess.Popen.stderr.close
    - t.start
    - typing.cast.tree.head.commit.stdin.close
    - cmdline.split
    - typing.cast.object.tree.encode
    - typing.cast.object.terminate
    - datetime.timedelta.tree.stdin.close
    - git.cmd.Popen.stderr.close
    - threads.append
    - git.index.fun._has_file_extension
    - git.cmd.Popen.tree.stdout.close
    - typing.BinaryIO.tree.wait
    - datetime.timedelta.stdout.close
    - git.cmd.Popen.rstrip
    - typing.IO.wait
    - subprocess.Popen.tree.terminate
    - pumps.append
    - typing.cast.object.head.commit.stdout.close
    - datetime.timedelta._terminate
    - datetime.timedelta.poll
    - typing.cast.object.head.commit.poll
    - git.cmd.Popen.poll
    - typing.cast.object.tree._terminate
    - typing.IO.stdout.close
    - typing.cast.tree.terminate
    - typing.cast._terminate
    - typing.IO.terminate
    - typing.cast.head.commit.encode
    - git.cmd.Popen.tree.stderr.close
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.cast.object.wait
    - git.cmd.Git.AutoInterrupt._terminate
    - subprocess.Popen.tree.stdout.close
    - typing.cast.tree.object.head.commit.stderr.close
    - typing.BinaryIO.tree.poll
    - git.compat.safe_decode
    - typing.cast.head.commit.tree.poll
    - typing.cast.object.head.commit.tree.stderr.read
    - typing.cast.object.encode
    - typing.cast.tree.object.stderr.close
    - message.endswith
    - typing.cast.tree.object.wait
    - typing.cast.stdout.close
    - typing.BinaryIO.poll
    - datetime.timedelta.tree.encode
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.stdout.close
    - git.cmd.Popen.tree.rstrip
    - typing.cast.object.head.commit.rstrip
    - typing.cast.object.head.commit._terminate
    - typing.IO.encode
    - git.cmd.Popen.tree.terminate
    - typing.cast.object.head.commit.tree.terminate
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - message.strip
    - git.util.RemoteProgress.line_dropped
    - typing.cast.head.commit.tree.stdin.close
    - typing.BinaryIO.tree.stdout.close
    - _logger.info
    - typing.BinaryIO.stdin.close
    - git.cmd.Popen.wait
    - typing.BinaryIO.tree.stderr.read
    - subprocess.Popen.tree.stdin.close
    - datetime.timedelta.stderr.read
    - typing.cast.tree.object.stdout.close
    - typing.cast.head.commit.poll
    - os.access
    - typing.cast.tree.object.head.commit.stdout.close
    - datetime.timedelta.stderr.close
    - typing.IO.tree.poll
    - typing.IO.tree.encode
    - typing.cast.head.commit.tree.stderr.read
    - datetime.timedelta.stdin.close
    - typing.cast.tree.stderr.close
    - typing.cast.object.head.commit.tree.poll
    - typing.cast.tree.object._terminate
    - typing.cast.head.commit._terminate
    - typing.cast.tree.object.rstrip
    - <builtin>.float
    - typing.cast.object._terminate
    - typing.cast.stderr.read
    - datetime.timedelta.tree.poll
    - typing.BinaryIO.tree.terminate
    - t.join
    - typing.cast.object.head.commit.stderr.close
    - typing.cast
    - typing.cast.object.head.commit.tree.wait
    - subprocess.Popen.tree.encode
    - subprocess.Popen.encode
    - os.path.splitext
    - <builtin>.len
    - os.path.join
    - datetime.timedelta.tree.stderr.close
    - typing.cast.object.head.commit.stderr.read
    - datetime.timedelta.rstrip
    - gitdb.utils.encoding.force_text
    - s.decode
    - typing.cast.tree.stdout.close
    - typing.cast.object.head.commit.tree._terminate
    - subprocess.Popen.tree.stderr.close
    - typing.cast.tree.head.commit.poll
    - typing.cast.head.commit.terminate
    - typing.cast.stdin.close
    - typing.IO.tree.stdout.close
    - typing.cast.object.tree.terminate
    - typing.cast.object.rstrip
    - typing.BinaryIO.wait
    - subprocess.Popen.stdin.close
    - typing.cast.head.commit.tree._terminate
    - git.cmd.Popen.stderr.read
    - typing.BinaryIO.tree.stderr.close
    - subprocess.Popen.stderr.read
    - git.util.RemoteProgress.__init__
    - typing.cast.head.commit.rstrip
    - typing.cast.object.tree.stdin.close
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.object.head.commit.wait
    - subprocess.Popen.tree.stderr.read
    - typing.cast.head.commit.stdin.close
    - typing.BinaryIO.encode
    - datetime.timedelta.tree._terminate
    - typing.BinaryIO.rstrip
    - <builtin>.str
    - typing.cast.object.tree.wait
    - typing.cast.tree.object.head.commit.encode
    - subprocess.Popen.rstrip
    - typing.IO.tree.stdin.close
    - git.util.RemoteProgress._parse_progress_line
    - typing.cast.rstrip
    - typing.cast.object.stdout.close
    - typing.cast.tree.object.stdin.close
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.rstrip
    - typing.cast.tree.object.head.commit.stderr.read
    - typing.cast.tree.head.commit.encode
    - subprocess.Popen.poll
    - typing.BinaryIO.stderr.close
    - git.util.CallableRemoteProgress.update
    - typing.cast.object.head.commit.tree.stdout.close
    - git.cmd.Popen.tree.stdin.close
    - git.cmd.Popen.tree.stderr.read
    - typing.cast.head.commit.tree.stderr.close
    - typing.cast.head.commit.wait
    - pathlib.Path
    - typing.cast.head.commit.tree.rstrip
    - typing.cast.object.tree.stderr.read
    - typing.cast.tree.head.commit._terminate
    - typing.cast.object.stdin.close
    - typing.BinaryIO.tree.stdin.close
    - git.index.fun.hook_path
    - datetime.timedelta.tree.terminate
    - git.cmd.Popen.tree.encode
    - typing.IO.poll
    - <builtin>.hasattr
    - typing.cast.object.tree.rstrip
    - typing.cast.head.commit.tree.wait
    - subprocess.Popen.terminate
    - typing.cast.tree.head.commit.terminate
    - typing.BinaryIO.tree.rstrip
    - typing.IO.tree.terminate
    - typing.cast.tree.head.commit.wait
    - typing.cast.tree.object.terminate
    - t.is_alive
    - git.cmd.handle_process_output
    - typing.cast.tree.object.poll
    - match.groups
    - typing.cast.tree.head.commit.stdout.close
    - typing.cast.tree.object.encode
    - typing.BinaryIO.tree._terminate
    - typing.cast.head.commit.tree.terminate
    - _logger.debug
    - git.cmd.Popen.stdin.close
    - subprocess.Popen.wait
    - subprocess.Popen.tree._terminate
    linkageType: pythonLinkage
    raised:
    - HookExecutionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1166
    functionName: git.index.base.IndexFile._write_commit_editmsg
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - git.index.base.IndexFile._commit_editmsg_filepath
    - message.encode
    - <builtin>.open
    - commit_editmsg_file.write
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1177
    functionName: git.index.base.IndexFile._commit_editmsg_filepath
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1173
    functionName: git.index.base.IndexFile._read_commit_editmsg
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - commit_editmsg_file.read
    - git.index.base.IndexFile._commit_editmsg_filepath
    - <builtin>.open
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1170
    functionName: git.index.base.IndexFile._remove_commit_editmsg
    functionSourceFile: git.index.base
    functionUses: 1
    functionsReached:
    - os.remove
    - git.index.base.IndexFile._commit_editmsg_filepath
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Commit.create_from_tree
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: commit_editmsg_file.write
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: commit_editmsg_file.read
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aeb3b80>
    argNames:
    - cls
    - proc
    - ignore_stdout
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1180
    functionName: git.index.base.IndexFile._flush_stdin_and_wait
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - stdin_IO.close
    - stdin_IO.flush
    - proc.stdout.read
    - proc.stdout.close
    - proc.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stdin_IO.flush
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stdin_IO.close
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 16
    IfCount: 6
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b28a550>
    - <ast.Constant object at 0x7fab5b28a460>
    - <ast.Lambda object at 0x7fab5b28aa00>
    argNames:
    - self
    - paths
    - force
    - fprogress
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1196
    functionName: git.index.base.IndexFile.checkout
    functionSourceFile: git.index.base
    functionUses: 3
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - <builtin>.list
    - proc.stdout.read
    - git.index.base.IndexFile.<lambda3>
    - <builtin>.str
    - proc.stdout.readline
    - line.endswith
    - proc.stdin.write
    - git.index.base.IndexFile._flush_stdin_and_wait
    - proc.stdout.close
    - typing.cast.object.working_tree_dir.replace
    - stdin_IO.close
    - git.index.base.IndexFile._to_relative_path
    - args.append
    - proc.stdin.flush
    - stderr.splitlines
    - typing.cast.tree.working_tree_dir.replace
    - line.startswith
    - proc.wait
    - line.rfind
    - git.index.base.IndexFile._write_path_to_stdin
    - <builtin>.len
    - os.path.relpath
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.util.to_native_path_linux
    - stderr_IO.read
    - failed_files.append
    - typing.cast.working_tree_dir.replace
    - git.index.base.IndexFile.checkout.handle_stderr
    - <builtin>.isinstance
    - folder.endswith
    - unknown_lines.append
    - stdin_IO.flush
    - os.path.isabs
    - typing.cast.checkout_index
    - stderr_bytes.decode
    - failed_reasons.append
    - <builtin>.set
    - checked_out_files.append
    linkageType: pythonLinkage
    raised:
    - CheckoutError
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 9
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - proc
    - iter_checked_out_files
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1258
    functionName: git.index.base.IndexFile.checkout.handle_stderr
    functionSourceFile: git.index.base
    functionUses: 4
    functionsReached:
    - stderr_IO.read
    - failed_files.append
    - <builtin>.list
    - line.endswith
    - unknown_lines.append
    - stderr.splitlines
    - line.startswith
    - stderr_bytes.decode
    - <builtin>.set
    - failed_reasons.append
    - line.rfind
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - GitCommandError
    - CheckoutError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stderr_IO.read
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stderr_bytes.decode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stderr.splitlines
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: failed_files.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: failed_reasons.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.rfind
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unknown_lines.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.checkout_index
    functionSourceFile: typing
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: git.index.base.IndexFile.checkout.<lambda1>
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - proc.stderr.read
    - git.exc.GitCommandError.__init__
    - <builtin>.super
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: folder.endswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: checked_out_files.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aeb46a0>
    - <ast.Constant object at 0x7fab5aeb4eb0>
    - <ast.Constant object at 0x7fab5aeb4be0>
    - <ast.Constant object at 0x7fab5aeb4b20>
    argNames:
    - self
    - commit
    - working_tree
    - paths
    - head
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1382
    functionName: git.index.base.IndexFile.reset
    functionSourceFile: git.index.base
    functionUses: 2
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - <builtin>.list
    - git.repo.fun.name_to_object
    - <builtin>.sorted
    - subprocess.Popen
    - git.index.base.IndexFile.entry_key
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - gitdb.utils.encoding.force_bytes
    - proc.stdout.readline
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - line.endswith
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - git.index.base.IndexFile._serialize
    - stream_sha.write
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - gitdb.util.LockedFD.open
    - git.util.IndexFileSHA1Writer.__init__
    - git.index.fun.write_cache
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - proc.stdin.flush
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - proc.wait
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - gitdb.util.LockedFD.commit
    - stdin_IO.flush
    - unknown_lines.append
    - gitdb.util.hex_to_bin
    - git.index.base.IndexFile.write
    - <builtin>.set
    - typing.BinaryIO.dereference_recursive
    - gitdb.util.LockedFD.rollback
    - git.index.base.IndexFile._entries_sorted
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - proc.stdout.close
    - git.repo.fun.to_commit
    - gitdb.util.LockedFD
    - gitdb.util.make_sha
    - typing.cast.tree.re_hexsha_shortened.match
    - stdin_IO.close
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - struct.pack
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - failed_files.append
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - failed_reasons.append
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - stream_sha.write_sha
    - proc.stdin.write
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - stderr.splitlines
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - stderr_IO.read
    - typing.cast.working_tree_dir.replace
    - <builtin>.type
    - stderr_bytes.decode
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - proc.stdout.read
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile.<lambda3>
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - git.index.base.IndexFile._flush_stdin_and_wait
    - typing.cast.object.working_tree_dir.replace
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - git.index.base.IndexFile._to_relative_path
    - typing.cast.head.commit.tree.dereference_recursive
    - args.append
    - rev.startswith
    - typing.cast.tree.working_tree_dir.replace
    - line.startswith
    - line.rfind
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile._write_path_to_stdin
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - os.path.relpath
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - git.util.to_native_path_linux
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile.checkout.handle_stderr
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - folder.endswith
    - git.index.base.IndexFile.checkout
    - os.path.isabs
    - typing.cast.checkout_index
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    - checked_out_files.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Attribute object at 0x7fab5b619820>
    - <ast.Constant object at 0x7fab5b619dc0>
    - <ast.Constant object at 0x7fab5b619af0>
    argNames:
    - self
    - other
    - paths
    - create_patch
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1469
    functionName: git.index.base.IndexFile.diff
    functionSourceFile: git.index.base
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.head.commit.diff
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - subprocess.Popen
    - datetime.timedelta.diff
    - typing.cast.log_entry
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - subprocess.Popen.tree.diff
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - git.util.join_path_native
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.diff
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - typing.cast.object.head.commit.tree.diff
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - git.index.base.IndexFile._index_path
    - <builtin>.super
    - subprocess.Popen.diff
    - typing.IO.diff
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.IO.tree.diff
    - typing.cast.dereference_recursive
    - b.startswith
    - datetime.timedelta.tree.head.ref.log_entry
    - git.repo.fun.to_commit
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.BinaryIO.head.ref.log_entry
    - typing.cast.diff
    - typing.IO.re_hexsha_shortened.match
    - path.endswith
    - typing.BinaryIO.tree.diff
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - git.util.join_path
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.diff
    - git.cmd.Popen.dereference_recursive
    - git.cmd.Popen.tree.diff
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - datetime.timedelta.tree.diff
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.diff
    - kwargs.get
    - typing.cast.tree.head.commit.diff
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.cast.object.head.commit.diff
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.working_tree_dir.replace
    - path.replace
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.diff
    - typing.cast.object.head.commit.dereference_recursive
    - git.repo.fun.short_to_long
    - typing.BinaryIO.diff
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.cast.tree.diff
    - typing.IO.dereference_recursive
    - typing.cast.object.working_tree_dir.replace
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - git.util.to_native_path_windows
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.object.diff
    - rev.startswith
    - typing.cast.tree.working_tree_dir.replace
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.diff
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - git.util.to_native_path_linux
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - AssertionError
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.diff
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.diff
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.diff
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.diff
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.diff
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.diff
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.diff
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs.reference
    functionSourceFile: git.refs.reference
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 24
    functionName: git.refs.reference.require_remote_ref_path
    functionSourceFile: git.refs.reference
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: git.refs.reference.require_remote_ref_path.wrapper
    functionSourceFile: git.refs.reference
    functionUses: 0
    functionsReached:
    - git.refs.reference.Reference.remote_name
    - git.refs.reference.Reference.remote_head
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 152
    functionName: git.refs.reference.Reference.remote_name
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 164
    functionName: git.refs.reference.Reference.remote_head
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 73
    functionName: git.refs.reference.Reference.__str__
    functionSourceFile: git.refs.reference
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.head.log_append
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.head.log_append
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.head.log_append
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.head.log_append
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.head.log_append
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.head.log_append
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.log_append
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 121
    functionName: git.refs.reference.Reference.name
    functionSourceFile: git.refs.reference
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5bc727f0>
    argNames:
    - cls
    - repo
    - common_path
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 134
    functionName: git.refs.reference.Reference.iter_items
    functionSourceFile: git.refs.reference
    functionUses: 0
    functionsReached:
    - typing.BinaryIO.tree._iter_packed_refs
    - typing.cast.tree.object.working_tree_dir.replace
    - datetime.timedelta.tree.from_path
    - abs_path.replace
    - subprocess.Popen.from_path
    - git.refs.symbolic.SymbolicReference._iter_items
    - <builtin>.sorted
    - typing.IO.tree._iter_packed_refs
    - <builtin>.str
    - typing.cast.head.commit._iter_packed_refs
    - typing.cast.tree.object.from_path
    - typing.cast.tree.object.head.commit.from_path
    - datetime.timedelta._iter_packed_refs
    - typing.cast.object.tree.from_path
    - b.startswith
    - typing.BinaryIO.tree.from_path
    - typing.cast.tree.head.commit.from_path
    - typing.cast.object.head.commit.tree.from_path
    - typing.cast.head.commit.tree.from_path
    - subprocess.Popen.tree.from_path
    - typing.cast.head.commit.tree._iter_packed_refs
    - git.cmd.Popen._iter_packed_refs
    - typing.cast.object.head.commit.from_path
    - typing.cast.object._iter_packed_refs
    - git.util.join_path_native
    - typing.cast.tree._iter_packed_refs
    - typing.cast.object.working_tree_dir.replace
    - typing.IO.from_path
    - git.util.to_native_path_windows
    - subprocess.Popen._iter_packed_refs
    - typing.cast.object.head.commit._iter_packed_refs
    - datetime.timedelta.from_path
    - rela_path.startswith
    - typing.BinaryIO.from_path
    - datetime.timedelta.tree._iter_packed_refs
    - git.cmd.Popen.tree.from_path
    - root.split
    - subprocess.Popen.tree._iter_packed_refs
    - os.walk
    - typing.cast.tree.head.commit._iter_packed_refs
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.tree.object._iter_packed_refs
    - typing.cast.object.tree._iter_packed_refs
    - git.cmd.Popen.tree._iter_packed_refs
    - git.util.to_native_path_linux
    - rela_paths.add
    - typing.cast.tree.from_path
    - typing.cast.from_path
    - typing.cast.head.commit.from_path
    - git.util.join_path
    - git.cmd.Popen.from_path
    - typing.cast.working_tree_dir.replace
    - typing.cast.object.head.commit.tree._iter_packed_refs
    - typing.cast._iter_packed_refs
    - typing.cast.object.from_path
    - path.replace
    - typing.IO._iter_packed_refs
    - typing.cast.tree.object.head.commit._iter_packed_refs
    - <builtin>.set
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - typing.BinaryIO._iter_packed_refs
    - typing.IO.tree.from_path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b695c70>
    argNames:
    - cls
    - repo
    - common_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 811
    functionName: git.refs.symbolic.SymbolicReference._iter_items
    functionSourceFile: git.refs.symbolic
    functionUses: 1
    functionsReached:
    - typing.BinaryIO.tree._iter_packed_refs
    - typing.cast.tree.object.working_tree_dir.replace
    - datetime.timedelta.tree.from_path
    - abs_path.replace
    - subprocess.Popen.from_path
    - <builtin>.sorted
    - typing.IO.tree._iter_packed_refs
    - <builtin>.str
    - typing.cast.head.commit._iter_packed_refs
    - typing.cast.tree.object.from_path
    - typing.cast.tree.object.head.commit.from_path
    - datetime.timedelta._iter_packed_refs
    - typing.cast.object.tree.from_path
    - b.startswith
    - typing.BinaryIO.tree.from_path
    - typing.cast.tree.head.commit.from_path
    - typing.cast.object.head.commit.tree.from_path
    - typing.cast.head.commit.tree.from_path
    - subprocess.Popen.tree.from_path
    - typing.cast.head.commit.tree._iter_packed_refs
    - git.cmd.Popen._iter_packed_refs
    - typing.cast.object.head.commit.from_path
    - typing.cast.object._iter_packed_refs
    - git.util.join_path_native
    - typing.cast.tree._iter_packed_refs
    - typing.cast.object.working_tree_dir.replace
    - typing.IO.from_path
    - git.util.to_native_path_windows
    - subprocess.Popen._iter_packed_refs
    - typing.cast.object.head.commit._iter_packed_refs
    - datetime.timedelta.from_path
    - rela_path.startswith
    - typing.BinaryIO.from_path
    - datetime.timedelta.tree._iter_packed_refs
    - git.cmd.Popen.tree.from_path
    - root.split
    - subprocess.Popen.tree._iter_packed_refs
    - os.walk
    - typing.cast.tree.head.commit._iter_packed_refs
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.tree.object._iter_packed_refs
    - typing.cast.object.tree._iter_packed_refs
    - git.cmd.Popen.tree._iter_packed_refs
    - git.util.to_native_path_linux
    - rela_paths.add
    - typing.cast.tree.from_path
    - typing.cast.from_path
    - typing.cast.head.commit.from_path
    - git.util.join_path
    - git.cmd.Popen.from_path
    - typing.cast.working_tree_dir.replace
    - typing.cast.object.head.commit.tree._iter_packed_refs
    - typing.cast._iter_packed_refs
    - typing.cast.object.from_path
    - path.replace
    - typing.IO._iter_packed_refs
    - typing.cast.tree.object.head.commit._iter_packed_refs
    - <builtin>.set
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - typing.BinaryIO._iter_packed_refs
    - typing.IO.tree.from_path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.refs.reference.Reference
    functionSourceFile: git.refs.reference
    functionUses: 0
    functionsReached:
    - git.refs.reference.require_remote_ref_path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.refs.symbolic
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - repo
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: git.refs.symbolic._git_dir
    functionSourceFile: git.refs.symbolic
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b515100>
    argNames:
    - self
    - repo
    - path
    - check_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: git.refs.symbolic.SymbolicReference.__init__
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 81
    functionName: git.refs.symbolic.SymbolicReference.__str__
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 84
    functionName: git.refs.symbolic.SymbolicReference.__repr__
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: git.refs.symbolic.SymbolicReference.__eq__
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: git.refs.symbolic.SymbolicReference.__ne__
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: git.refs.symbolic.SymbolicReference.__hash__
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: git.refs.symbolic.SymbolicReference.name
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 109
    functionName: git.refs.symbolic.SymbolicReference.abspath
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - git.util.join_path_native
    - typing.cast.tree.object.working_tree_dir.replace
    - git.util.to_native_path_linux
    - git.util.to_native_path_windows
    - git.util.join_path
    - b.startswith
    - typing.cast.working_tree_dir.replace
    - git.refs.symbolic._git_dir
    - path.replace
    - typing.cast.tree.working_tree_dir.replace
    - path.endswith
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - <builtin>.str
    - typing.cast.object.working_tree_dir.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - repo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 113
    functionName: git.refs.symbolic.SymbolicReference._get_packed_refs_path
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - repo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: git.refs.symbolic.SymbolicReference._iter_packed_refs
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - subprocess.Popen.tree._get_packed_refs_path
    - typing.cast.tree.object.head.commit._get_packed_refs_path
    - <builtin>.open
    - typing.cast.object._get_packed_refs_path
    - line.split
    - typing.cast.object.head.commit._get_packed_refs_path
    - typing.cast.head.commit.tree._get_packed_refs_path
    - typing.cast._get_packed_refs_path
    - typing.cast.object.head.commit.tree._get_packed_refs_path
    - typing.cast.object.tree._get_packed_refs_path
    - typing.cast.tree._get_packed_refs_path
    - git.cmd.Popen.tree._get_packed_refs_path
    - typing.BinaryIO._get_packed_refs_path
    - line.strip
    - git.cmd.Popen._get_packed_refs_path
    - <builtin>.tuple
    - typing.IO._get_packed_refs_path
    - typing.BinaryIO.tree._get_packed_refs_path
    - typing.cast
    - line.startswith
    - typing.cast.tree.head.commit._get_packed_refs_path
    - typing.cast.tree.object._get_packed_refs_path
    - typing.IO.tree._get_packed_refs_path
    - datetime.timedelta.tree._get_packed_refs_path
    - typing.cast.head.commit._get_packed_refs_path
    - subprocess.Popen._get_packed_refs_path
    - datetime.timedelta._get_packed_refs_path
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._get_packed_refs_path
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._get_packed_refs_path
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._get_packed_refs_path
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._get_packed_refs_path
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._get_packed_refs_path
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._get_packed_refs_path
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._get_packed_refs_path
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - ref_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 157
    functionName: git.refs.symbolic.SymbolicReference.dereference_recursive
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object._get_ref_info
    - typing.cast.object.head.commit.tree._get_ref_info
    - typing.BinaryIO.tree._get_ref_info
    - typing.cast.object.tree._get_ref_info
    - subprocess.Popen.tree._get_ref_info
    - typing.cast.head.commit.tree._get_ref_info
    - typing.IO.tree._get_ref_info
    - typing.cast.object._get_ref_info
    - datetime.timedelta.tree._get_ref_info
    - typing.cast.head.commit._get_ref_info
    - datetime.timedelta._get_ref_info
    - typing.cast.tree.object.head.commit._get_ref_info
    - typing.BinaryIO._get_ref_info
    - typing.cast.tree._get_ref_info
    - typing.cast.tree.head.commit._get_ref_info
    - git.cmd.Popen._get_ref_info
    - typing.cast._get_ref_info
    - typing.IO._get_ref_info
    - git.cmd.Popen.tree._get_ref_info
    - typing.cast.object.head.commit._get_ref_info
    - subprocess.Popen._get_ref_info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._get_ref_info
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._get_ref_info
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._get_ref_info
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._get_ref_info
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._get_ref_info
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._get_ref_info
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._get_ref_info
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 1
    IfCount: 13
    argCount: 1
    argDefaultValues: []
    argNames:
    - ref_path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 174
    functionName: git.refs.symbolic.SymbolicReference._check_ref_name_valid
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - <builtin>.any
    - <builtin>.ord
    - component.endswith
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ord
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: component.endswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - ref_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 222
    functionName: git.refs.symbolic.SymbolicReference._get_ref_info_helper
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - subprocess.Popen.tree.re_hexsha_only.match
    - typing.BinaryIO.tree._iter_packed_refs
    - typing.cast.tree.object.re_hexsha_only.match
    - typing.IO.re_hexsha_only.match
    - typing.cast.head.commit.tree._check_ref_name_valid
    - git.cmd.Popen._check_ref_name_valid
    - typing.cast.object.head.commit.re_hexsha_only.match
    - git.cmd.Popen.tree.re_hexsha_only.match
    - <builtin>.open
    - git.cmd.Popen.re_hexsha_only.match
    - git.refs.symbolic._git_dir
    - datetime.timedelta.tree.re_hexsha_only.match
    - typing.cast.object.head.commit.tree._check_ref_name_valid
    - typing.IO.tree._iter_packed_refs
    - typing.cast.re_hexsha_only.match
    - typing.cast.head.commit._iter_packed_refs
    - <builtin>.str
    - typing.BinaryIO.tree._check_ref_name_valid
    - typing.cast.tree.head.commit.re_hexsha_only.match
    - typing.cast._check_ref_name_valid
    - typing.cast.object.head.commit.tree.re_hexsha_only.match
    - datetime.timedelta._iter_packed_refs
    - typing.cast.object.tree.re_hexsha_only.match
    - typing.BinaryIO._check_ref_name_valid
    - typing.cast.tree.object._check_ref_name_valid
    - typing.cast.head.commit.tree._iter_packed_refs
    - git.cmd.Popen._iter_packed_refs
    - typing.cast.tree.re_hexsha_only.match
    - typing.cast.object._iter_packed_refs
    - typing.cast.tree._iter_packed_refs
    - datetime.timedelta.tree._check_ref_name_valid
    - subprocess.Popen.tree._check_ref_name_valid
    - subprocess.Popen._iter_packed_refs
    - typing.cast.object.head.commit._iter_packed_refs
    - typing.cast.head.commit.tree.re_hexsha_only.match
    - datetime.timedelta.tree._iter_packed_refs
    - typing.cast.head.commit.re_hexsha_only.match
    - typing.IO.tree._check_ref_name_valid
    - typing.IO._check_ref_name_valid
    - typing.cast.object._check_ref_name_valid
    - subprocess.Popen.tree._iter_packed_refs
    - typing.cast.tree.object.head.commit.re_hexsha_only.match
    - typing.cast.tree.head.commit._iter_packed_refs
    - typing.cast.head.commit._check_ref_name_valid
    - <builtin>.len
    - typing.cast.tree.object._iter_packed_refs
    - git.cmd.Popen.tree._iter_packed_refs
    - typing.cast.object.tree._iter_packed_refs
    - typing.cast.object.tree._check_ref_name_valid
    - datetime.timedelta._check_ref_name_valid
    - value.split
    - os.path.join
    - datetime.timedelta.re_hexsha_only.match
    - typing.cast.object.re_hexsha_only.match
    - subprocess.Popen._check_ref_name_valid
    - typing.BinaryIO.re_hexsha_only.match
    - typing.IO.tree.re_hexsha_only.match
    - fp.read
    - typing.BinaryIO.tree.re_hexsha_only.match
    - typing.cast._iter_packed_refs
    - typing.cast.object.head.commit.tree._iter_packed_refs
    - typing.cast.object.head.commit._check_ref_name_valid
    - typing.IO._iter_packed_refs
    - typing.cast.tree.head.commit._check_ref_name_valid
    - typing.cast.tree.object.head.commit._iter_packed_refs
    - git.cmd.Popen.tree._check_ref_name_valid
    - typing.BinaryIO._iter_packed_refs
    - typing.cast.tree.object.head.commit._check_ref_name_valid
    - subprocess.Popen.re_hexsha_only.match
    - typing.cast.tree._check_ref_name_valid
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._check_ref_name_valid
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._check_ref_name_valid
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._check_ref_name_valid
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._check_ref_name_valid
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._check_ref_name_valid
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._check_ref_name_valid
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._check_ref_name_valid
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._iter_packed_refs
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._iter_packed_refs
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._iter_packed_refs
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._iter_packed_refs
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._iter_packed_refs
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._iter_packed_refs
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._iter_packed_refs
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.re_hexsha_only.match
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.re_hexsha_only.match
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.re_hexsha_only.match
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.re_hexsha_only.match
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.re_hexsha_only.match
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.re_hexsha_only.match
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.re_hexsha_only.match
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - ref_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 270
    functionName: git.refs.symbolic.SymbolicReference._get_ref_info
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.cast.tree.head.commit._get_ref_info_helper
    - typing.cast.object.head.commit.tree._get_ref_info_helper
    - git.cmd.Popen._get_ref_info_helper
    - typing.IO.tree._get_ref_info_helper
    - typing.IO._get_ref_info_helper
    - typing.cast.tree.object.head.commit._get_ref_info_helper
    - typing.cast.object.tree._get_ref_info_helper
    - subprocess.Popen.tree._get_ref_info_helper
    - subprocess.Popen._get_ref_info_helper
    - typing.cast.object._get_ref_info_helper
    - typing.BinaryIO.tree._get_ref_info_helper
    - git.cmd.Popen.tree._get_ref_info_helper
    - typing.cast.object.head.commit._get_ref_info_helper
    - typing.cast.head.commit._get_ref_info_helper
    - datetime.timedelta.tree._get_ref_info_helper
    - typing.cast.head.commit.tree._get_ref_info_helper
    - typing.BinaryIO._get_ref_info_helper
    - datetime.timedelta._get_ref_info_helper
    - typing.cast.tree.object._get_ref_info_helper
    - typing.cast._get_ref_info_helper
    - typing.cast.tree._get_ref_info_helper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._get_ref_info_helper
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._get_ref_info_helper
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._get_ref_info_helper
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._get_ref_info_helper
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._get_ref_info_helper
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._get_ref_info_helper
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._get_ref_info_helper
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.dereference_recursive
    functionSourceFile: git
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.dereference_recursive
    functionSourceFile: datetime
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.dereference_recursive
    functionSourceFile: datetime
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.dereference_recursive
    functionSourceFile: subprocess
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.dereference_recursive
    functionSourceFile: subprocess
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.dereference_recursive
    functionSourceFile: typing
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.dereference_recursive
    functionSourceFile: git
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 290
    functionName: git.refs.symbolic.SymbolicReference._get_commit
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - datetime.timedelta._get_object
    - git.cmd.Popen.tree._get_object
    - typing.BinaryIO.tree._get_object
    - git.cmd.Popen._get_object
    - typing.cast.object._get_object
    - typing.cast.object.tree._get_object
    - typing.cast.object.head.commit._get_object
    - subprocess.Popen.tree._get_object
    - typing.cast.head.commit._get_object
    - typing.cast.tree._get_object
    - typing.cast.tree.object.head.commit._get_object
    - typing.cast.head.commit.tree._get_object
    - typing.IO._get_object
    - typing.IO.tree._get_object
    - subprocess.Popen._get_object
    - typing.cast.tree.object._get_object
    - typing.cast.object.head.commit.tree._get_object
    - datetime.timedelta.tree._get_object
    - typing.BinaryIO._get_object
    - typing.cast._get_object
    - typing.cast.tree.head.commit._get_object
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._get_object
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._get_object
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._get_object
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._get_object
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._get_object
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._get_object
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._get_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b521040>
    argNames:
    - self
    - commit
    - logmsg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 307
    functionName: git.refs.symbolic.SymbolicReference.set_commit
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.cast.tree.head.commit.repo.rev_parse
    - typing.cast.object.tree.repo.rev_parse
    - typing.cast.set_object
    - typing.IO.tree.repo.rev_parse
    - typing.cast.object.head.commit.tree.set_object
    - typing.BinaryIO.set_object
    - typing.cast.head.commit.set_object
    - subprocess.Popen.repo.rev_parse
    - typing.cast.object.set_object
    - subprocess.Popen.tree.repo.rev_parse
    - typing.cast.object.head.commit.set_object
    - datetime.timedelta.repo.rev_parse
    - typing.cast.head.commit.tree.repo.rev_parse
    - git.cmd.Popen.set_object
    - datetime.timedelta.tree.set_object
    - typing.cast.head.commit.tree.set_object
    - subprocess.Popen.tree.set_object
    - typing.cast.tree.object.head.commit.set_object
    - typing.cast.object.tree.set_object
    - typing.cast.head.commit.repo.rev_parse
    - typing.IO.repo.rev_parse
    - typing.IO.set_object
    - typing.BinaryIO.tree.set_object
    - git.cmd.Popen.tree.set_object
    - typing.cast.tree.object.repo.rev_parse
    - git.cmd.Popen.repo.rev_parse
    - datetime.timedelta.tree.repo.rev_parse
    - git.cmd.Popen.tree.repo.rev_parse
    - typing.cast.tree.head.commit.set_object
    - typing.cast.repo.rev_parse
    - typing.cast.tree.object.head.commit.repo.rev_parse
    - typing.BinaryIO.repo.rev_parse
    - typing.IO.tree.set_object
    - <builtin>.isinstance
    - datetime.timedelta.set_object
    - subprocess.Popen.set_object
    - typing.cast.object.head.commit.repo.rev_parse
    - typing.cast.tree.object.set_object
    - typing.cast.tree.set_object
    - typing.cast.tree.repo.rev_parse
    - typing.BinaryIO.tree.repo.rev_parse
    - typing.cast.object.head.commit.tree.repo.rev_parse
    - typing.cast.object.repo.rev_parse
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.repo.rev_parse
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.repo.rev_parse
    functionSourceFile: subprocess
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.repo.rev_parse
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.repo.rev_parse
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.repo.rev_parse
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.repo.rev_parse
    functionSourceFile: git
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.repo.rev_parse
    functionSourceFile: typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.set_object
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.set_object
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.set_object
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.set_object
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.set_object
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.set_object
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.set_object
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad311c0>
    argNames:
    - self
    - object
    - logmsg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 345
    functionName: git.refs.symbolic.SymbolicReference.set_object
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.cast.object._get_reference
    - typing.cast.set_reference
    - typing.cast.object.tree._get_reference
    - typing.cast.tree.object.head.commit.set_reference
    - typing.cast.tree.set_reference
    - typing.cast.object.head.commit.tree.set_reference
    - git.cmd.Popen.set_reference
    - subprocess.Popen.tree.set_reference
    - typing.cast.object.head.commit._get_reference
    - typing.cast.tree.head.commit._get_reference
    - typing.IO._get_reference
    - typing.cast.object.head.commit.tree._get_reference
    - typing.BinaryIO.tree.set_reference
    - git.cmd.Popen.tree.set_reference
    - typing.cast.head.commit._get_reference
    - subprocess.Popen.tree._get_reference
    - typing.cast.object.head.commit.set_reference
    - typing.IO.tree._get_reference
    - typing.cast.tree.object.head.commit._get_reference
    - git.cmd.Popen.tree._get_reference
    - subprocess.Popen._get_reference
    - typing.cast._get_reference
    - typing.cast.tree.head.commit.set_reference
    - typing.cast.tree.object.set_reference
    - typing.cast.object.set_reference
    - typing.cast.tree.object._get_reference
    - typing.BinaryIO.set_reference
    - typing.cast.tree._get_reference
    - datetime.timedelta.tree.set_reference
    - datetime.timedelta._get_reference
    - datetime.timedelta.tree._get_reference
    - typing.BinaryIO.tree._get_reference
    - typing.cast.head.commit.tree._get_reference
    - datetime.timedelta.set_reference
    - <builtin>.isinstance
    - typing.cast.head.commit.tree.set_reference
    - typing.cast.head.commit.set_reference
    - typing.IO.set_reference
    - typing.cast.object.tree.set_reference
    - git.cmd.Popen._get_reference
    - subprocess.Popen.set_reference
    - typing.IO.tree.set_reference
    - typing.BinaryIO._get_reference
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.set_reference
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.set_reference
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.set_reference
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.set_reference
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.set_reference
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.set_reference
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.set_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._get_reference
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._get_reference
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._get_reference
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._get_reference
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._get_reference
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._get_reference
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._get_reference
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.refs.symbolic.SymbolicReference
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 402
    functionName: git.refs.symbolic.SymbolicReference._get_reference
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - datetime.timedelta.tree.from_path
    - typing.cast.tree.object._get_ref_info
    - subprocess.Popen.from_path
    - typing.cast.object.head.commit.tree._get_ref_info
    - typing.BinaryIO.tree._get_ref_info
    - typing.cast.tree.object.from_path
    - typing.cast.object.tree._get_ref_info
    - subprocess.Popen.tree._get_ref_info
    - typing.cast.tree.object.head.commit.from_path
    - typing.cast.object.tree.from_path
    - typing.cast.head.commit.tree._get_ref_info
    - typing.IO.tree._get_ref_info
    - typing.BinaryIO.tree.from_path
    - typing.cast.object._get_ref_info
    - typing.cast.tree.head.commit.from_path
    - datetime.timedelta.tree._get_ref_info
    - typing.cast.object.head.commit.tree.from_path
    - typing.cast.head.commit.tree.from_path
    - typing.cast.head.commit._get_ref_info
    - datetime.timedelta._get_ref_info
    - subprocess.Popen.tree.from_path
    - typing.cast.object.head.commit.from_path
    - typing.IO.from_path
    - datetime.timedelta.from_path
    - typing.BinaryIO.from_path
    - typing.cast.tree.object.head.commit._get_ref_info
    - git.cmd.Popen.tree.from_path
    - typing.BinaryIO._get_ref_info
    - typing.cast.tree._get_ref_info
    - typing.cast.tree.head.commit._get_ref_info
    - git.cmd.Popen._get_ref_info
    - typing.cast.tree.from_path
    - typing.cast._get_ref_info
    - typing.cast.from_path
    - typing.cast.head.commit.from_path
    - typing.IO._get_ref_info
    - git.cmd.Popen.from_path
    - git.cmd.Popen.tree._get_ref_info
    - typing.cast.object.from_path
    - typing.cast.object.head.commit._get_ref_info
    - subprocess.Popen._get_ref_info
    - typing.IO.tree.from_path
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.from_path
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.from_path
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.from_path
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.from_path
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.from_path
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.from_path
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.from_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 6
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b009700>
    argNames:
    - self
    - ref
    - logmsg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 416
    functionName: git.refs.symbolic.SymbolicReference.set_reference
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.BinaryIO.tree.log_append
    - typing.cast.tree.head.commit.repo.rev_parse
    - typing.cast.object.tree.repo.rev_parse
    - os.path.dirname
    - typing.cast.object.log_append
    - typing.IO.tree.repo.rev_parse
    - subprocess.Popen.repo.rev_parse
    - typing.cast.head.commit.tree.log_append
    - typing.IO.tree.log_append
    - git.cmd.Popen.log_append
    - os.path.isdir
    - subprocess.Popen.tree.repo.rev_parse
    - datetime.timedelta.repo.rev_parse
    - typing.cast.head.commit.tree.repo.rev_parse
    - fd.write
    - typing.cast.tree.object.log_append
    - datetime.timedelta.log_append
    - typing.cast.tree.log_append
    - gitdb.util.LockedFD.open
    - typing.IO.log_append
    - typing.cast.head.commit.repo.rev_parse
    - typing.cast.head.commit.log_append
    - gitdb.util.LockedFD
    - typing.IO.repo.rev_parse
    - os.makedirs
    - write_value.encode
    - typing.BinaryIO.log_append
    - typing.cast.tree.object.head.commit.log_append
    - git.cmd.Popen.tree.log_append
    - typing.cast.tree.object.repo.rev_parse
    - git.util.assure_directory_exists
    - git.cmd.Popen.repo.rev_parse
    - datetime.timedelta.tree.repo.rev_parse
    - typing.cast.object.tree.log_append
    - git.cmd.Popen.tree.repo.rev_parse
    - typing.cast.repo.rev_parse
    - typing.cast.tree.head.commit.log_append
    - typing.cast.tree.object.head.commit.repo.rev_parse
    - typing.BinaryIO.repo.rev_parse
    - <builtin>.isinstance
    - gitdb.util.LockedFD.commit
    - typing.cast.object.head.commit.repo.rev_parse
    - subprocess.Popen.log_append
    - subprocess.Popen.tree.log_append
    - typing.cast.object.head.commit.log_append
    - typing.cast.object.head.commit.tree.log_append
    - gitdb.util.LockedFD.rollback
    - typing.cast.log_append
    - datetime.timedelta.tree.log_append
    - typing.cast.tree.repo.rev_parse
    - typing.BinaryIO.tree.repo.rev_parse
    - typing.cast.object.head.commit.tree.repo.rev_parse
    - typing.cast.object.repo.rev_parse
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: write_value.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd.write
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.log_append
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.log_append
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.log_append
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.log_append
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.log_append
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.log_append
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.log_append
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 507
    functionName: git.refs.symbolic.SymbolicReference.is_valid
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 521
    functionName: git.refs.symbolic.SymbolicReference.is_detached
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 533
    functionName: git.refs.symbolic.SymbolicReference.log
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - string_date.count
    - git.refs.log.RefLog._read_from_file
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - typing.Protocol.extend
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - gitdb.util.file_contents_ro_filepath.close
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - git.refs.log.RefLog.iter_entries
    - cls.name_email_regex.search
    - timestamp.startswith
    - string_date.utcoffset
    - <builtin>.ValueError
    - line.strip
    - gitdb.util.file_contents_ro_filepath.readline
    - git.objects.util.utctz_to_altz
    - git.refs.log.RefLog.__init__
    - gitdb.util.file_contents_ro_filepath
    - typing.cast
    - date_formats.append
    - info.find
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - git.refs.log.RefLog.path
    - os.path.join
    - string_date.split
    - <builtin>.isinstance
    - git.refs.log.RefLog.from_file
    - cls._re_hexsha_only.match
    - line_str.split
    - git.refs.log.RefLog._deserialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 207
    functionName: git.refs.log.RefLog.path
    functionSourceFile: git.refs.log
    functionUses: 4
    functionsReached:
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - filepath
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 192
    functionName: git.refs.log.RefLog.from_file
    functionSourceFile: git.refs.log
    functionUses: 1
    functionsReached:
    - string_date.count
    - git.refs.log.RefLog._read_from_file
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - typing.Protocol.extend
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - gitdb.util.file_contents_ro_filepath.close
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - git.refs.log.RefLog.iter_entries
    - cls.name_email_regex.search
    - timestamp.startswith
    - string_date.utcoffset
    - <builtin>.ValueError
    - line.strip
    - gitdb.util.file_contents_ro_filepath.readline
    - git.objects.util.utctz_to_altz
    - git.refs.log.RefLog.__init__
    - gitdb.util.file_contents_ro_filepath
    - typing.cast
    - date_formats.append
    - info.find
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - line_str.split
    - git.refs.log.RefLog._deserialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7fab5ad0ea60>
    argNames:
    - self
    - oldbinsha
    - message
    - newbinsha
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 545
    functionName: git.refs.symbolic.SymbolicReference.log_append
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - os.path.dirname
    - git.util.Actor._main_actor
    - git.util.LockFile.__init__
    - git.objects.util.altz_to_utctz_str
    - typing.cast.tree.object.repo.config_reader
    - <builtin>.open
    - typing.cast.head.commit.repo.config_reader
    - typing.cast.object.tree.repo.config_reader
    - git.refs.log.RefLogEntry.format
    - message.split
    - datetime.timedelta.repo.config_reader
    - gitdb.util.bin_to_hex.decode
    - typing.cast.tree.head.commit.repo.config_reader
    - <builtin>.setattr
    - typing.cast.tree.repo.config_reader
    - os.path.isdir
    - <builtin>.getattr
    - typing.cast.object.repo.config_reader
    - git.util.rmfile
    - typing.cast.object.head.commit.tree.repo.config_reader
    - subprocess.Popen.tree.repo.config_reader
    - <builtin>.int
    - fd.write
    - typing.IO.tree.repo.config_reader
    - typing.cast.repo.config_reader
    - <builtin>.abs
    - os.remove
    - subprocess.Popen.repo.config_reader
    - gitdb.util.bin_to_hex
    - git.util.LockFile._release_lock
    - typing.cast.head.commit.tree.repo.config_reader
    - git.refs.log.RefLog.append_entry
    - git.util.Actor.committer
    - os.path.isfile
    - fd.close
    - os.makedirs
    - git.util.assure_directory_exists
    - git.util.LockFile._lock_file_path
    - typing.cast.object.head.commit.repo.config_reader
    - time.time
    - git.cmd.Popen.tree.repo.config_reader
    - git.util.Actor.__init__
    - <builtin>.len
    - typing.IO.repo.config_reader
    - git.refs.log.RefLog.path
    - git.util.LockFile._has_lock
    - os.path.join
    - os.chmod
    - typing.BinaryIO.repo.config_reader
    - typing.BinaryIO.tree.repo.config_reader
    - <builtin>.isinstance
    - datetime.timedelta.tree.repo.config_reader
    - typing.cast.tree.object.head.commit.repo.config_reader
    - config_reader.get
    - git.cmd.Popen.repo.config_reader
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.repo.config_reader
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.repo.config_reader
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.repo.config_reader
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.repo.config_reader
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.repo.config_reader
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.repo.config_reader
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.repo.config_reader
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aefb520>
    argNames:
    - cls
    - config_reader
    - filepath
    - oldbinsha
    - newbinsha
    - message
    - write
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 299
    functionName: git.refs.log.RefLog.append_entry
    functionSourceFile: git.refs.log
    functionUses: 1
    functionsReached:
    - os.path.dirname
    - git.util.Actor._main_actor
    - git.util.LockFile.__init__
    - git.objects.util.altz_to_utctz_str
    - <builtin>.open
    - git.refs.log.RefLogEntry.format
    - message.split
    - gitdb.util.bin_to_hex.decode
    - <builtin>.setattr
    - os.path.isdir
    - <builtin>.getattr
    - <builtin>.int
    - fd.write
    - <builtin>.abs
    - os.remove
    - gitdb.util.bin_to_hex
    - git.util.LockFile._release_lock
    - git.util.Actor.committer
    - os.path.isfile
    - fd.close
    - os.makedirs
    - git.util.assure_directory_exists
    - git.util.LockFile._lock_file_path
    - time.time
    - git.util.Actor.__init__
    - <builtin>.len
    - git.util.LockFile._has_lock
    - os.chmod
    - <builtin>.isinstance
    - config_reader.get
    - git.util.rmfile
    - git.util.LockFile._obtain_lock_or_raise
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 581
    functionName: git.refs.symbolic.SymbolicReference.log_entry
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - string_date.count
    - fp.readlines
    - <builtin>.open
    - fp.readline
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - cls.name_email_regex.search
    - timestamp.startswith
    - string_date.utcoffset
    - <builtin>.ValueError
    - line.strip
    - git.objects.util.utctz_to_altz
    - typing.cast
    - info.find
    - date_formats.append
    - typing.cast.total_seconds
    - git.refs.log.RefLog.entry_at
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - os.path.join
    - git.refs.log.RefLog.path
    - string_date.split
    - <builtin>.range
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - line_str.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - filepath
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 245
    functionName: git.refs.log.RefLog.entry_at
    functionSourceFile: git.refs.log
    functionUses: 1
    functionsReached:
    - string_date.count
    - fp.readlines
    - <builtin>.open
    - fp.readline
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - cls.name_email_regex.search
    - timestamp.startswith
    - string_date.utcoffset
    - <builtin>.ValueError
    - line.strip
    - git.objects.util.utctz_to_altz
    - typing.cast
    - info.find
    - date_formats.append
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.range
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - line_str.split
    linkageType: pythonLinkage
    raised:
    - IndexError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 614
    functionName: git.refs.symbolic.SymbolicReference.delete
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - subprocess.Popen.tree._get_packed_refs_path
    - typing.BinaryIO.to_full_path
    - typing.cast.tree.object.head.commit._get_packed_refs_path
    - <builtin>.open
    - typing.cast.tree.head.commit.to_full_path
    - typing.cast.object._get_packed_refs_path
    - datetime.timedelta.tree.to_full_path
    - typing.cast.tree.to_full_path
    - subprocess.Popen
    - subprocess.Popen.to_full_path
    - typing.cast.head.commit.tree._get_packed_refs_path
    - datetime.timedelta.to_full_path
    - typing.cast._get_packed_refs_path
    - line_ref.strip
    - typing.cast.object.head.commit.tree._get_packed_refs_path
    - typing.cast.object.head.commit._get_packed_refs_path
    - typing.cast.object.head.commit.to_full_path
    - typing.cast.object.tree._get_packed_refs_path
    - typing.IO.to_full_path
    - os.remove
    - typing.cast.head.commit.tree.to_full_path
    - typing.cast.object.to_full_path
    - fd.writelines
    - git.cmd.Popen.tree.to_full_path
    - line.encode
    - new_lines.append
    - typing.IO.tree.to_full_path
    - typing.cast.tree._get_packed_refs_path
    - typing.BinaryIO._get_packed_refs_path
    - git.cmd.Popen.tree._get_packed_refs_path
    - line_bytes.decode
    - git.cmd.Popen._get_packed_refs_path
    - typing.cast.object.head.commit.tree.to_full_path
    - os.path.isfile
    - datetime.timedelta
    - typing.cast.tree.object.to_full_path
    - typing.cast.head.commit.to_full_path
    - typing.IO._get_packed_refs_path
    - typing.BinaryIO.tree._get_packed_refs_path
    - subprocess.Popen.tree.to_full_path
    - line.startswith
    - typing.cast.tree.head.commit._get_packed_refs_path
    - typing.cast.tree.object._get_packed_refs_path
    - typing.BinaryIO.tree.to_full_path
    - typing.cast.to_full_path
    - typing.IO.tree._get_packed_refs_path
    - os.path.join
    - git.refs.log.RefLog.path
    - git.cmd.Popen
    - datetime.timedelta.tree._get_packed_refs_path
    - typing.cast.head.commit._get_packed_refs_path
    - typing.IO
    - typing.BinaryIO
    - os.path.exists
    - subprocess.Popen._get_packed_refs_path
    - line.partition
    - typing.cast.tree.object.head.commit.to_full_path
    - typing.cast.object.tree.to_full_path
    - git.cmd.Popen.to_full_path
    - datetime.timedelta._get_packed_refs_path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.to_full_path
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.to_full_path
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.to_full_path
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.to_full_path
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.to_full_path
    functionSourceFile: subprocess
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.to_full_path
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.to_full_path
    functionSourceFile: git
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_bytes.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_ref.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: new_lines.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd.writelines
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5aefbcd0>
    argNames:
    - cls
    - repo
    - path
    - resolve
    - reference
    - force
    - logmsg
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 674
    functionName: git.refs.symbolic.SymbolicReference._create
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.BinaryIO.to_full_path
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.open
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - typing.cast.tree.to_full_path
    - typing.cast.tree.rev_parse
    - subprocess.Popen
    - typing.cast.object.head.commit.to_full_path
    - typing.cast.log_entry
    - typing.IO.to_full_path
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - subprocess.Popen.tree.rev_parse
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - typing.cast.rev_parse
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.rev_parse
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.to_full_path
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.IO.tree.rev_parse
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.object.head.commit.rev_parse
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - typing.BinaryIO.dereference_recursive
    - typing.cast.object.tree.to_full_path
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - git.refs.symbolic._git_dir
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - fd.read
    - rev.find
    - typing.cast.dereference_recursive
    - git.cmd.Popen.rev_parse
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.cast.head.commit.tree.to_full_path
    - typing.cast.object.tree.rev_parse
    - git.repo.fun.to_commit
    - typing.cast.tree.object.rev_parse
    - typing.cast.tree.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.rev_parse
    - typing.BinaryIO.head.ref.log_entry
    - datetime.timedelta.rev_parse
    - typing.cast.tree.object.head.commit.rev_parse
    - typing.IO.re_hexsha_shortened.match
    - typing.cast.to_full_path
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.BinaryIO.tree.rev_parse
    - typing.IO.tree.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.IO.tree.re_hexsha_shortened.match
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.rev_parse
    - git.cmd.Popen.tree.rev_parse
    - typing.cast.object.head.commit.tree.dereference_recursive
    - datetime.timedelta.to_full_path
    - subprocess.Popen.rev_parse
    - typing.cast.object.to_full_path
    - typing.IO.tree.to_full_path
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - os.path.isfile
    - typing.cast.tree.object.to_full_path
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - subprocess.Popen.tree.to_full_path
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - os.path.join
    - typing.cast.head.commit.rev_parse
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.to_full_path
    - typing.cast.head.commit.tree.rev_parse
    - typing.cast.object.head.commit.dereference_recursive
    - datetime.timedelta.tree.to_full_path
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - subprocess.Popen.to_full_path
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - git.cmd.Popen.tree.to_full_path
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.to_full_path
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - ref.set_reference
    - typing.cast.head.commit.to_full_path
    - typing.IO.rev_parse
    - rev.startswith
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.tree.head.commit.rev_parse
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.rev_parse
    - typing.cast.tree.object.head.commit.to_full_path
    - git.repo.fun.rev_parse
    - git.cmd.Popen.to_full_path
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.rev_parse
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.rev_parse
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.rev_parse
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.rev_parse
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.rev_parse
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.rev_parse
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.rev_parse
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd.read
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ref.set_reference
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b28ac10>
    - <ast.Constant object at 0x7fab5b28a610>
    - <ast.Constant object at 0x7fab5b28a100>
    argNames:
    - cls
    - repo
    - path
    - reference
    - logmsg
    - force
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 718
    functionName: git.refs.symbolic.SymbolicReference.create
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - git.cmd.Popen._create
    - datetime.timedelta.tree._create
    - typing.cast.object._create
    - datetime.timedelta._create
    - typing.cast.tree.object.head.commit._create
    - typing.cast.head.commit.tree._create
    - typing.IO._create
    - typing.IO.tree._create
    - typing.cast.head.commit._create
    - typing.cast.tree._create
    - typing.cast.object.head.commit._create
    - typing.cast.object.tree._create
    - subprocess.Popen.tree._create
    - typing.cast.object.head.commit.tree._create
    - typing.BinaryIO._create
    - typing.BinaryIO.tree._create
    - typing.cast.tree.object._create
    - typing.cast.tree.head.commit._create
    - typing.cast._create
    - git.cmd.Popen.tree._create
    - subprocess.Popen._create
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._create
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._create
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._create
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._create
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._create
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._create
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._create
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b28afa0>
    argNames:
    - self
    - new_path
    - force
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 760
    functionName: git.refs.symbolic.SymbolicReference.rename
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - os.path.dirname
    - fd1.read
    - typing.BinaryIO.to_full_path
    - <builtin>.open
    - typing.cast.tree.head.commit.to_full_path
    - git.refs.symbolic._git_dir
    - datetime.timedelta.tree.to_full_path
    - typing.cast.tree.to_full_path
    - os.path.isdir
    - fd2.read
    - subprocess.Popen.to_full_path
    - datetime.timedelta.to_full_path
    - typing.cast.object.head.commit.to_full_path
    - typing.IO.to_full_path
    - os.remove
    - typing.cast.head.commit.tree.to_full_path
    - typing.cast.object.to_full_path
    - git.cmd.Popen.tree.to_full_path
    - typing.IO.tree.to_full_path
    - typing.cast.object.head.commit.tree.to_full_path
    - os.path.isfile
    - typing.cast.tree.object.to_full_path
    - typing.cast.head.commit.to_full_path
    - os.makedirs
    - subprocess.Popen.tree.to_full_path
    - typing.BinaryIO.tree.to_full_path
    - typing.cast.to_full_path
    - os.path.join
    - typing.cast.tree.object.head.commit.to_full_path
    - os.rename
    - typing.cast.object.tree.to_full_path
    - git.cmd.Popen.to_full_path
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd1.read
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd2.read
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.rename
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: root.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rela_paths.add
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rela_path.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b6fe460>
    argNames:
    - cls
    - repo
    - common_path
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 851
    functionName: git.refs.symbolic.SymbolicReference.iter_items
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - typing.IO._iter_items
    - typing.cast.head.commit._iter_items
    - datetime.timedelta.tree._iter_items
    - subprocess.Popen._iter_items
    - typing.IO.tree._iter_items
    - typing.cast.tree._iter_items
    - subprocess.Popen.tree._iter_items
    - typing.cast.object.tree._iter_items
    - typing.cast.tree.object.head.commit._iter_items
    - git.cmd.Popen._iter_items
    - typing.cast._iter_items
    - typing.cast.object._iter_items
    - git.cmd.Popen.tree._iter_items
    - typing.cast.object.head.commit.tree._iter_items
    - datetime.timedelta._iter_items
    - typing.BinaryIO.tree._iter_items
    - typing.cast.object.head.commit._iter_items
    - typing.cast.tree.head.commit._iter_items
    - typing.cast.tree.object._iter_items
    - typing.cast.head.commit.tree._iter_items
    - typing.BinaryIO._iter_items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree._iter_items
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen._iter_items
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree._iter_items
    functionSourceFile: subprocess
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen._iter_items
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree._iter_items
    functionSourceFile: git
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta._iter_items
    functionSourceFile: datetime
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO._iter_items
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - repo
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 880
    functionName: git.refs.symbolic.SymbolicReference.from_path
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 924
    functionName: git.refs.symbolic.SymbolicReference.is_remote
    functionSourceFile: git.refs.symbolic
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.refs.log
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.refs.log.RefLogEntry
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 49
    functionName: git.refs.log.RefLogEntry.__repr__
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - git.refs.log.RefLogEntry.format
    - git.objects.util.altz_to_utctz_str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 53
    functionName: git.refs.log.RefLogEntry.format
    functionSourceFile: git.refs.log
    functionUses: 3
    functionsReached:
    - <builtin>.abs
    - git.objects.util.altz_to_utctz_str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 68
    functionName: git.refs.log.RefLogEntry.oldhexsha
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 73
    functionName: git.refs.log.RefLogEntry.newhexsha
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: git.refs.log.RefLogEntry.actor
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 83
    functionName: git.refs.log.RefLogEntry.time
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 92
    functionName: git.refs.log.RefLogEntry.message
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues: []
    argNames:
    - cls
    - oldhexsha
    - newhexsha
    - actor
    - time
    - tz_offset
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: git.refs.log.RefLogEntry.new
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - line
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 113
    functionName: git.refs.log.RefLogEntry.from_line
    functionSourceFile: git.refs.log
    functionUses: 8
    functionsReached:
    - string_date.count
    - string_date.astimezone
    - m.groups
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - line_str.split
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - cls.name_email_regex.search
    - timestamp.startswith
    - <builtin>.ValueError
    - git.objects.util.utctz_to_altz
    - typing.cast
    - date_formats.append
    - info.find
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - string_date.utcoffset
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_str.split
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls._re_hexsha_only.match
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: info.find
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b3483a0>
    argNames:
    - cls
    - filepath
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 162
    functionName: git.refs.log.RefLog.__new__
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b348310>
    argNames:
    - self
    - filepath
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 166
    functionName: git.refs.log.RefLog.__init__
    functionSourceFile: git.refs.log
    functionUses: 2
    functionsReached:
    - string_date.count
    - git.refs.log.RefLog._read_from_file
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - typing.Protocol.extend
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - gitdb.util.file_contents_ro_filepath.close
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - git.refs.log.RefLog.iter_entries
    - cls.name_email_regex.search
    - timestamp.startswith
    - string_date.utcoffset
    - <builtin>.ValueError
    - line.strip
    - gitdb.util.file_contents_ro_filepath.readline
    - git.objects.util.utctz_to_altz
    - gitdb.util.file_contents_ro_filepath
    - typing.cast
    - date_formats.append
    - info.find
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - line_str.split
    - git.refs.log.RefLog._deserialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 175
    functionName: git.refs.log.RefLog._read_from_file
    functionSourceFile: git.refs.log
    functionUses: 3
    functionsReached:
    - string_date.count
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - typing.Protocol.extend
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - gitdb.util.file_contents_ro_filepath.close
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - git.refs.log.RefLog.iter_entries
    - cls.name_email_regex.search
    - timestamp.startswith
    - string_date.utcoffset
    - <builtin>.ValueError
    - line.strip
    - gitdb.util.file_contents_ro_filepath.readline
    - git.objects.util.utctz_to_altz
    - gitdb.util.file_contents_ro_filepath
    - typing.cast
    - date_formats.append
    - info.find
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - line_str.split
    - git.refs.log.RefLog._deserialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.file_contents_ro_filepath
    functionSourceFile: gitdb
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 395
    functionName: git.refs.log.RefLog._deserialize
    functionSourceFile: git.refs.log
    functionUses: 4
    functionsReached:
    - string_date.count
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - typing.Protocol.extend
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - line_str.split
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - git.refs.log.RefLog.iter_entries
    - cls.name_email_regex.search
    - timestamp.startswith
    - <builtin>.ValueError
    - line.strip
    - gitdb.util.file_contents_ro_filepath.readline
    - git.objects.util.utctz_to_altz
    - gitdb.util.file_contents_ro_filepath
    - typing.cast
    - info.find
    - date_formats.append
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - string_date.utcoffset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.file_contents_ro_filepath.close
    functionSourceFile: gitdb
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 219
    functionName: git.refs.log.RefLog.iter_entries
    functionSourceFile: git.refs.log
    functionUses: 5
    functionsReached:
    - string_date.count
    - string_date.astimezone
    - git.refs.log.RefLogEntry.from_line
    - m.groups
    - line.decode
    - cls.name_only_regex.search
    - calendar.timegm
    - line_str.split
    - git.util.Actor._from_string
    - git.objects.util.verify_utctz
    - <builtin>.int
    - m.group
    - git.objects.util.parse_date
    - time.strptime
    - <builtin>.abs
    - cls.name_email_regex.search
    - timestamp.startswith
    - <builtin>.ValueError
    - line.strip
    - gitdb.util.file_contents_ro_filepath.readline
    - git.objects.util.utctz_to_altz
    - gitdb.util.file_contents_ro_filepath
    - typing.cast
    - info.find
    - date_formats.append
    - typing.cast.total_seconds
    - git.util.Actor.__init__
    - <builtin>.len
    - string_date.rfind
    - string_date.split
    - <builtin>.isinstance
    - cls._re_hexsha_only.match
    - string_date.utcoffset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.file_contents_ro_filepath.readline
    functionSourceFile: gitdb
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.readline
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - filepath
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 280
    functionName: git.refs.log.RefLog.to_file
    functionSourceFile: git.refs.log
    functionUses: 1
    functionsReached:
    - gitdb.util.LockedFD
    - os.path.dirname
    - os.makedirs
    - gitdb.util.LockedFD.commit
    - typing.Protocol.format
    - git.refs.log.RefLog._serialize
    - git.util.assure_directory_exists
    - gitdb.util.LockedFD.rollback
    - os.path.isdir
    - gitdb.util.LockedFD.open
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 386
    functionName: git.refs.log.RefLog._serialize
    functionSourceFile: git.refs.log
    functionUses: 2
    functionsReached:
    - typing.Protocol.format
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fd.close
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 370
    functionName: git.refs.log.RefLog.write
    functionSourceFile: git.refs.log
    functionUses: 0
    functionsReached:
    - gitdb.util.LockedFD
    - os.path.dirname
    - os.makedirs
    - gitdb.util.LockedFD.commit
    - typing.Protocol.format
    - git.refs.log.RefLog._serialize
    - git.util.assure_directory_exists
    - gitdb.util.LockedFD.rollback
    - os.path.isdir
    - gitdb.util.LockedFD.open
    - git.refs.log.RefLog.to_file
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.Protocol.format
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.Protocol.extend
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.fun
    functionSourceFile: git.index.fun
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - git_dir
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: git.index.fun.hook_path
    functionSourceFile: git.index.fun
    functionUses: 2
    functionsReached:
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: git.index.fun._has_file_extension
    functionSourceFile: git.index.fun
    functionUses: 2
    functionsReached:
    - os.path.splitext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.splitext
    functionSourceFile: os
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path.relative_to
    functionSourceFile: pathlib
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stat.S_ISDIR
    functionSourceFile: stat
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stat.S_IFMT
    functionSourceFile: stat
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.pack
    functionSourceFile: struct
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream_sha.write
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stream_sha.write_sha
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - stream
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 201
    functionName: git.index.fun.read_header
    functionSourceFile: git.index.fun
    functionUses: 3
    functionsReached:
    - typing.cast
    - gitdb.util.file_contents_ro.read
    - struct.unpack
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.file_contents_ro.read
    functionSourceFile: gitdb
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.unpack
    functionSourceFile: struct
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - entry
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 214
    functionName: git.index.fun.entry_key
    functionSourceFile: git.index.fun
    functionUses: 0
    functionsReached:
    - typing.cast
    - <builtin>.len
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.util.file_contents_ro.tell
    functionSourceFile: gitdb
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entry.path.find
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tree_items.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oentry.path.find
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - entries
    - write
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: git.objects.fun.tree_to_stream
    functionSourceFile: git.objects.fun
    functionUses: 4
    functionsReached:
    - <builtin>.range
    - io.BytesIO.write
    - <builtin>.ord
    - <builtin>.isinstance
    - name.encode
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.getvalue
    functionSourceFile: io
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gitdb.db.MemoryDB.store
    functionSourceFile: gitdb
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - tree_entry
    - stage
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 362
    functionName: git.index.fun._tree_entry_to_baseindexentry
    functionSourceFile: git.index.fun
    functionUses: 2
    functionsReached:
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - odb
    - tree_sha
    - path_prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 256
    functionName: git.objects.fun.traverse_tree_recursive
    functionSourceFile: git.objects.fun
    functionUses: 2
    functionsReached:
    - s.decode
    - <builtin>.ord
    - <builtin>.isinstance
    - entries.extend
    - entries.append
    - odb.stream
    - git.objects.fun.traverse_tree_recursive
    - stat.S_ISDIR
    - git.objects.fun.tree_entries_from_data
    - git.compat.safe_decode
    - <builtin>.len
    - out.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - odb
    - tree_shas
    - path_prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 168
    functionName: git.objects.fun.traverse_trees_recursive
    functionSourceFile: git.objects.fun
    functionUses: 2
    functionsReached:
    - trees_data.append
    - <builtin>.range
    - s.decode
    - <builtin>.list
    - <builtin>.tuple
    - <builtin>.enumerate
    - out.extend
    - <builtin>.ord
    - <builtin>.isinstance
    - git.objects.fun._find_by_name
    - odb.stream
    - git.objects.fun.traverse_trees_recursive
    - git.objects.fun._to_full_path
    - stat.S_ISDIR
    - git.objects.fun.tree_entries_from_data
    - git.compat.safe_decode
    - <builtin>.len
    - out.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.fun
    functionSourceFile: git.objects.fun
    functionUses: 0
    functionsReached:
    - typing.overload
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.encode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO.write
    functionSourceFile: io
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: git.objects.fun.tree_entries_from_data
    functionSourceFile: git.objects.fun
    functionUses: 7
    functionsReached:
    - s.decode
    - <builtin>.ord
    - <builtin>.isinstance
    - git.compat.safe_decode
    - <builtin>.len
    - out.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - tree_data
    - name
    - is_dir
    - start_at
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 129
    functionName: git.objects.fun._find_by_name
    functionSourceFile: git.objects.fun
    functionUses: 3
    functionsReached:
    - stat.S_ISDIR
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - item
    - path_prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 161
    functionName: git.objects.fun._to_full_path
    functionSourceFile: git.objects.fun
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: odb.stream
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trees_data.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entries.extend
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.tree
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.tree.<lambda1>
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cache
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 67
    functionName: git.objects.tree.TreeModifier.__init__
    functionSourceFile: git.objects.tree
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 70
    functionName: git.objects.tree.TreeModifier._index_by_name
    functionSourceFile: git.objects.tree
    functionUses: 2
    functionsReached:
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 80
    functionName: git.objects.tree.TreeModifier.set_done
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.tree.TreeModifier.set_done.<lambda1>
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b69ad60>
    argNames:
    - self
    - sha
    - mode
    - name
    - force
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 95
    functionName: git.objects.tree.TreeModifier.add
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - gitdb.util.to_bin_sha
    - <builtin>.enumerate
    - git.objects.tree.TreeModifier._index_by_name
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - binsha
    - mode
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 139
    functionName: git.objects.tree.TreeModifier.add_unchecked
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 153
    functionName: git.objects.tree.TreeModifier.__delitem__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - <builtin>.enumerate
    - git.objects.tree.TreeModifier._index_by_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: index_object._iter_convert_to_object
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 210
    functionName: git.objects.tree.Tree._set_cache_
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - typing.cast.object.odb.stream
    - <builtin>.super
    - typing.cast.odb.stream
    - s.decode
    - typing.cast.tree.object.odb.stream
    - <builtin>.ord
    - <builtin>.isinstance
    - ostream.read
    - typing.cast.object.head.commit.tree.odb.stream
    - git.objects.fun.tree_entries_from_data
    - git.compat.safe_decode
    - typing.cast.tree.odb.stream
    - <builtin>.len
    - out.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ostream.read
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - iterable
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 219
    functionName: git.objects.tree.Tree._iter_convert_to_object
    functionSourceFile: git.objects.tree
    functionUses: 3
    functionsReached:
    - git.util.join_path
    - b.startswith
    - path.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 231
    functionName: git.objects.tree.Tree.join
    functionSourceFile: git.objects.tree
    functionUses: 2
    functionsReached:
    - file.split
    - git.util.join_path
    - b.startswith
    - <builtin>.enumerate
    - path.endswith
    - <builtin>.len
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - KeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: file.split
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 270
    functionName: git.objects.tree.Tree.__truediv__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - file.split
    - git.util.join_path
    - b.startswith
    - <builtin>.enumerate
    - path.endswith
    - git.objects.tree.Tree.join
    - <builtin>.len
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 278
    functionName: git.objects.tree.Tree.trees
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 283
    functionName: git.objects.tree.Tree.blobs
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 288
    functionName: git.objects.tree.Tree.cache
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - git.objects.tree.TreeModifier.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 340
    functionName: git.objects.tree.Tree.list_traverse
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - i
    - j
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 352
    functionName: git.objects.tree.Tree.__getslice__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - git.util.join_path
    - b.startswith
    - <builtin>.list
    - git.objects.tree.Tree._iter_convert_to_object
    - path.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 355
    functionName: git.objects.tree.Tree.__iter__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - git.util.join_path
    - b.startswith
    - git.objects.tree.Tree._iter_convert_to_object
    - path.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 358
    functionName: git.objects.tree.Tree.__len__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 361
    functionName: git.objects.tree.Tree.__getitem__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - file.split
    - git.util.join_path
    - b.startswith
    - <builtin>.isinstance
    - <builtin>.enumerate
    - path.endswith
    - git.objects.tree.Tree.join
    - <builtin>.len
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 373
    functionName: git.objects.tree.Tree.__contains__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - git.util.join_path
    - b.startswith
    - <builtin>.isinstance
    - path.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 392
    functionName: git.objects.tree.Tree.__reversed__
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - git.util.join_path
    - b.startswith
    - git.objects.tree.Tree._iter_convert_to_object
    - path.endswith
    - <builtin>.reversed
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 395
    functionName: git.objects.tree.Tree._serialize
    functionSourceFile: git.objects.tree
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - io.BytesIO.write
    - <builtin>.ord
    - <builtin>.isinstance
    - name.encode
    - git.objects.fun.tree_to_stream
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.submodule
    functionSourceFile: git.objects.submodule
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.submodule.root
    functionSourceFile: git.objects.submodule.root
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.objects.submodule.root.RootUpdateProgress
    functionSourceFile: git.objects.submodule.root
    functionUses: 0
    functionsReached:
    - <builtin>.range
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - repo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 60
    functionName: git.objects.submodule.root.RootModule.__init__
    functionSourceFile: git.objects.submodule.root
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - git.refs.symbolic.SymbolicReference.to_full_path
    - <builtin>.isinstance
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 73
    functionName: git.objects.submodule.root.RootModule._clear_cache
    functionSourceFile: git.objects.submodule.root
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 24
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 35
    ICount: 20
    IfCount: 24
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b6958b0>
    - <ast.Constant object at 0x7fab5b695a00>
    - <ast.Constant object at 0x7fab5b695af0>
    - <ast.Constant object at 0x7fab5b695310>
    - <ast.Constant object at 0x7fab5b6952e0>
    - <ast.Constant object at 0x7fab5b695670>
    - <ast.Constant object at 0x7fab5b695a30>
    - <ast.Constant object at 0x7fab5b695b80>
    - <ast.Constant object at 0x7fab5b695490>
    argNames:
    - self
    - previous_commit
    - recursive
    - force_remove
    - init
    - to_latest_revision
    - progress
    - dry_run
    - force_reset
    - keep_going
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 79
    functionName: git.objects.submodule.root.RootModule.update
    functionSourceFile: git.objects.submodule.root
    functionUses: 0
    functionsReached:
    - smr.rename
    - subprocess.Popen.tree.head.ref.log_entry
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - git.cmd.Git.AutoInterrupt.wait
    - typing.IO.stderr.read
    - git.repo.fun.deref_tag
    - psm.module_exists
    - typing.IO.config_writer
    - subprocess.Popen.head.ref.log_entry
    - <builtin>.enumerate
    - sm.module
    - git.refs.head.Head.set_tracking_branch
    - typing.cast.head.commit.tree.config_writer
    - typing.BinaryIO.tree.head.ref.log_entry
    - git.repo.fun.name_to_object
    - <builtin>.open
    - typing.IO.tree.wait
    - psm.move
    - os.environ.get
    - typing.cast.tree.stderr.read
    - typing.cast.config_writer
    - typing.cast.git.rev_list
    - datetime.timedelta.tree.config_reader
    - subprocess.Popen
    - git.objects.submodule.util.sm_name
    - writer.options
    - git.repo.base.Repo.commit
    - _logger.warning
    - typing.cast.log_entry
    - gitdb.utils.encoding.force_bytes
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - git.objects.commit.Commit._iter_from_process_or_stream
    - sm.module_exists
    - datetime.timedelta.tree.dereference_recursive
    - typing.BinaryIO.config_writer
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - typing.cast.head.commit.stderr.read
    - typing.BinaryIO.tree.config_reader
    - git.repo.base.Repo._get_config_path
    - gitdb.util.bin_to_hex
    - index.entry_key
    - _logger.error
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - datetime.timedelta.tree.wait
    - typing.IO.config_reader
    - git.util.finalize_process
    - git.refs.symbolic.SymbolicReference.to_full_path
    - typing.cast.tree.wait
    - git.repo.base.Repo.config_reader
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - typing.cast.tree.object.stderr.read
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.stdout.readline
    - git.refs.reference.Reference.__init__
    - typing.BinaryIO.tree.dereference_recursive
    - typing.cast.tree.head.commit.config_reader
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - git.util.LockFile._lock_file_path
    - git.objects.commit.Commit.__init__
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.IO.tree.config_reader
    - out_list.extend
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - git.refs.head.Head.config_writer
    - configparser.RawConfigParser._dict
    - typing.cast.object.tree.head.ref.log_entry
    - git.types.assert_never
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - git.remote.Remote.iter_items
    - <builtin>.isinstance
    - section.find
    - typing.cast.tree.object.head.log_entry
    - section.strip
    - gitdb.util.hex_to_bin
    - typing.cast.object.tree.config_reader
    - section.rfind
    - <builtin>.set
    - typing.BinaryIO.dereference_recursive
    - typing.cast.rev_list
    - rref.commit.traverse
    - typing.cast.tree.head.commit.stderr.read
    - subprocess.Popen.tree.wait
    - <builtin>.super
    - typing.BinaryIO.config_reader
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.config_writer
    - typing.IO.tree.stderr.read
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.commit
    - typing.cast.tree.config_writer
    - typing.cast.object.head.commit.tree.config_reader
    - git.objects.submodule.base.Submodule._sio_modules
    - writer.set_value
    - datetime.timedelta.re_hexsha_shortened.match
    - typing.BinaryIO.tree.wait
    - git.repo.base.Repo._config_reader
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - git.cmd.Popen.config_reader
    - typing.cast.dereference_recursive
    - git.objects.submodule.base.Submodule.iter_items
    - b.startswith
    - typing.cast.tree.head.log_entry
    - datetime.timedelta.tree.head.ref.log_entry
    - typing.IO.wait
    - git.objects.submodule.util.find_first_remote_branch
    - typing.IO.tree.config_writer
    - typing.cast.object.config_writer
    - git.repo.fun.to_commit
    - writer.remove_section
    - <builtin>.ValueError
    - git.refs.tag.TagReference.create
    - line.strip
    - typing.cast.tree.re_hexsha_shortened.match
    - configparser.RawConfigParser.__init__
    - subprocess.Popen.config_reader
    - git.remote.Remote.__init__
    - typing.cast.object.git.rev_list
    - git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream
    - typing.BinaryIO.head.ref.log_entry
    - configparser.RawConfigParser.sections
    - typing.cast.tree.object.readline
    - typing.IO.re_hexsha_shortened.match
    - typing.cast.object.wait
    - typing.cast.object.head.commit.tree.stderr.read
    - path.endswith
    - typing.cast.tree.head.commit.config_writer
    - subprocess.Popen.tree.config_writer
    - git.objects.commit.Commit.iter_items
    - typing.cast.tree.object.git.rev_list
    - typing.cast.tree.stdout.readline
    - git.util.LockFile._has_lock
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - args_list.extend
    - typing.IO.tree.dereference_recursive
    - typing.cast.tree.object.wait
    - typing.cast.object.stderr.read
    - typing.cast.head.commit.tree.config_reader
    - git.util.LockFile._obtain_lock
    - git.util.join_path
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.tree.commit
    - typing.cast.tree.object.config_reader
    - typing.IO.tree.re_hexsha_shortened.match
    - typing.cast.config_reader
    - typing.cast.head.commit.config_reader
    - configparser.RawConfigParser.has_option
    - git.util.IterableObj.list_items
    - typing.BinaryIO.stderr.read
    - typing.cast.wait
    - git.refs.remote.RemoteReference.iter_items
    - git.cmd.Popen.dereference_recursive
    - git.cmd.Popen.tree.config_writer
    - git.util.IterableList.__init__
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.tag
    - datetime.timedelta.tree.stderr.read
    - git.cmd.Popen.wait
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.tree.object.commit
    - typing.cast.object.head.log_entry
    - typing.cast.re_hexsha_shortened.match
    - Object.new_from_sha
    - line.split
    - typing.cast.object.head.commit.tree.dereference_recursive
    - typing.BinaryIO.tree.stderr.read
    - datetime.timedelta.stderr.read
    - typing.cast.tree.config_reader
    - writer.remove_option
    - typing.cast.object.head.commit.tree.config_writer
    - repo.commit
    - typing.cast.object.readline
    - typing.cast.tree.git.rev_list
    - typing.cast.head.commit.tree.stderr.read
    - git.repo.base.Repo.config_writer
    - rsm.remove
    - typing.cast.object.stdout.readline
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - sm.update
    - typing.cast.stderr.read
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - os.path.isfile
    - <builtin>.tuple
    - typing.cast.object.head.commit.config_writer
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - git.config.GitConfigParser.__init__
    - git.objects.submodule.util.SubmoduleConfigParser.__init__
    - typing.cast.object.head.commit.tree.wait
    - typing.cast.tree.head.ref.log_entry
    - typing.cast.head.commit.config_writer
    - <builtin>.len
    - os.path.join
    - repo.config_reader
    - datetime.timedelta.head.ref.log_entry
    - typing.cast.object.head.commit.stderr.read
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - os.path.normpath
    - remote.fetch
    - typing.BinaryIO.wait
    - <builtin>.type
    - git.cmd.Popen.stderr.read
    - datetime.timedelta.config_reader
    - typing.cast.object.config_reader
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - git.config.GitConfigParser._acquire_lock
    - typing.cast.readline
    - git.util.RemoteProgress.__init__
    - subprocess.Popen.tree.config_reader
    - typing.cast.head.ref.log_entry
    - smm.create_remote
    - git.refs.head.Head._config_parser
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - subprocess.Popen.stderr.read
    - typing.cast.tree.object.head.commit.dereference_recursive
    - git.util.LockFile.__init__
    - os.path.expanduser
    - typing.cast.tree.object.head.commit.wait
    - typing.cast.tree.object.head.commit.config_writer
    - typing.cast.tree.object.head.commit.config_reader
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.stdout.readline
    - typing.cast.object.head.commit.wait
    - typing.cast.object.head.commit.dereference_recursive
    - typing.cast.tree.object.stdout.readline
    - subprocess.Popen.tree.stderr.read
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - io.BytesIO
    - <builtin>.str
    - typing.cast.object.head.commit.tree.readline
    - typing.cast.head.log_entry
    - typing.cast.object.tree.wait
    - smm.delete_remote
    - git.objects.submodule.base.Submodule.__init__
    - typing.cast.object.head.commit.tree.git.rev_list
    - <builtin>.int
    - smr.fetch
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - datetime.timedelta.wait
    - git.cmd.Popen.tree.wait
    - typing.IO.dereference_recursive
    - typing.BinaryIO.tree.config_writer
    - typing.cast.tree.object.head.commit.stderr.read
    - datetime.timedelta.config_writer
    - git.util.CallableRemoteProgress.update
    - git.config.SectionConstraint.__init__
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - git.cmd.Popen.tree.config_reader
    - configparser.RawConfigParser.get
    - git.cmd.Popen.tree.stderr.read
    - typing.IO.head.ref.log_entry
    - typing.cast.object.head.commit.config_reader
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - typing.cast.head.commit.tree.dereference_recursive
    - git.objects.submodule.base.Submodule._config_parser
    - rev.startswith
    - typing.cast.head.commit.wait
    - git.cmd.Popen.config_writer
    - typing.cast.object.tree.stderr.read
    - subprocess.Popen.config_writer
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - git.remote.PushInfo.iter_items
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - <builtin>.hasattr
    - typing.cast.head.commit.tree.wait
    - typing.IO
    - <builtin>.range
    - git.refs.remote.RemoteReference.create
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.config.get_config_path
    - typing.cast.tree.head.commit.wait
    - typing.cast.object.commit
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.config_writer
    - typing.cast.object.tree.config_writer
    - typing.cast.tree.readline
    - git.remote.FetchInfo.iter_items
    - git.repo.fun.rev_parse
    - _logger.debug
    - git.util.LockFile._obtain_lock_or_raise
    - section.startswith
    - subprocess.Popen.wait
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InvalidGitRepositoryError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.log_entry
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.log_entry
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.log_entry
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.log_entry
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rsm.remove
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: psm.module_exists
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: psm.move
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: smm.create_remote
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: smr.fetch
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: smm.delete_remote
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: smr.rename
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rref.commit.traverse
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sm.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 460
    functionName: git.objects.submodule.root.RootModule.module
    functionSourceFile: git.objects.submodule.root
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.typ
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - paths
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    functionName: git.index.typ.BlobFilter.__init__
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stage_blob
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: git.index.typ.BlobFilter.__call__
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached:
    - pathlib.Path
    - <builtin>.all
    - <builtin>.isinstance
    - <builtin>.zip
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.all
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.index.typ.BaseIndexEntryHelper
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached:
    - struct.pack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - inp_tuple
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: git.index.typ.BaseIndexEntry.__new__
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: git.index.typ.BaseIndexEntry.__str__
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 115
    functionName: git.index.typ.BaseIndexEntry.__repr__
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 119
    functionName: git.index.typ.BaseIndexEntry.hexsha
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached:
    - binascii.b2a_hex.decode
    - binascii.b2a_hex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.b2a_hex
    functionSourceFile: binascii
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.b2a_hex.decode
    functionSourceFile: binascii
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 124
    functionName: git.index.typ.BaseIndexEntry.stage
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - repo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 142
    functionName: git.index.typ.BaseIndexEntry.to_blob
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 158
    functionName: git.index.typ.IndexEntry.ctime
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached:
    - typing.cast
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 167
    functionName: git.index.typ.IndexEntry.mtime
    functionSourceFile: git.index.typ
    functionUses: 0
    functionsReached:
    - typing.cast
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.index.util
    functionSourceFile: git.index.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.replace
    functionSourceFile: os
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: git.index.util.TemporaryFileSwap.__enter__
    functionSourceFile: git.index.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - exc_type
    - exc_val
    - exc_tb
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: git.index.util.TemporaryFileSwap.__exit__
    functionSourceFile: git.index.util
    functionUses: 0
    functionsReached:
    - os.path.isfile
    - os.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 72
    functionName: git.index.util.post_clear_cache.post_clear_cache_if_not_raised
    functionSourceFile: git.index.util
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.index.base.IndexFile._items_to_rela_paths
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - <builtin>.list
    - git.repo.fun.name_to_object
    - <builtin>.sorted
    - git.index.util.default_index.check_default_index
    - subprocess.Popen
    - git.index.base.IndexFile.entry_key
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - gitdb.utils.encoding.force_bytes
    - proc.stdout.readline
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - line.endswith
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - git.index.base.IndexFile._serialize
    - stream_sha.write
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - typing.cast.mv
    - gitdb.util.LockedFD.open
    - git.util.IndexFileSHA1Writer.__init__
    - git.index.fun.write_cache
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - proc.stdin.flush
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - proc.wait
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - gitdb.util.LockedFD.commit
    - stdin_IO.flush
    - unknown_lines.append
    - gitdb.util.hex_to_bin
    - git.index.base.IndexFile.write
    - <builtin>.set
    - typing.BinaryIO.dereference_recursive
    - gitdb.util.LockedFD.rollback
    - out.append
    - git.index.base.IndexFile.move
    - git.index.base.IndexFile._entries_sorted
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - proc.stdout.close
    - typing.cast.read_tree
    - git.repo.fun.to_commit
    - gitdb.util.LockedFD
    - gitdb.util.make_sha
    - typing.cast.tree.re_hexsha_shortened.match
    - stdin_IO.close
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - struct.pack
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - git.index.base.IndexFile.merge_tree
    - failed_files.append
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - paths.append
    - typing.IO.tree.re_hexsha_shortened.match
    - failed_reasons.append
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - stream_sha.write_sha
    - proc.stdin.write
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast.rm
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - stderr.splitlines
    - git.index.base.IndexFile.reset
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - stderr_IO.read
    - typing.cast.working_tree_dir.replace
    - <builtin>.type
    - stderr_bytes.decode
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - proc.stdout.read
    - kwargs.pop
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile.<lambda3>
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - git.index.base.IndexFile._flush_stdin_and_wait
    - typing.cast.object.working_tree_dir.replace
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - git.index.base.IndexFile._to_relative_path
    - typing.cast.head.commit.tree.dereference_recursive
    - args.append
    - rev.startswith
    - typing.cast.tree.working_tree_dir.replace
    - line.startswith
    - line.rfind
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile._write_path_to_stdin
    - git.index.base.IndexFile.remove
    - os.path.relpath
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - git.util.to_native_path_linux
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile.checkout.handle_stderr
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - folder.endswith
    - git.index.base.IndexFile.checkout
    - os.path.isabs
    - typing.cast.checkout_index
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    - checked_out_files.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 90
    functionName: git.index.util.default_index.check_default_index
    functionSourceFile: git.index.util
    functionUses: 1
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.head.ref.log_entry
    - git.index.base.IndexFile._items_to_rela_paths
    - git.repo.fun.deref_tag
    - subprocess.Popen.head.ref.log_entry
    - typing.BinaryIO.tree.head.ref.log_entry
    - <builtin>.list
    - git.repo.fun.name_to_object
    - <builtin>.sorted
    - subprocess.Popen
    - git.index.base.IndexFile.entry_key
    - git.repo.base.Repo.commit
    - typing.cast.log_entry
    - gitdb.utils.encoding.force_bytes
    - proc.stdout.readline
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - line.endswith
    - datetime.timedelta.tree.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - git.index.base.IndexFile._serialize
    - stream_sha.write
    - typing.cast.tree.object.head.ref.log_entry
    - typing.cast.tree.dereference_recursive
    - typing.cast.mv
    - gitdb.util.LockedFD.open
    - git.util.IndexFileSHA1Writer.__init__
    - git.index.fun.write_cache
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.IO.tree.head.ref.log_entry
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - proc.stdin.flush
    - typing.BinaryIO.tree.dereference_recursive
    - git.cmd.Popen.tree.head.ref.log_entry
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - proc.wait
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.dereference_recursive
    - git.cmd.Popen.head.ref.log_entry
    - typing.cast.object.tree.head.ref.log_entry
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - <builtin>.isinstance
    - gitdb.util.LockedFD.commit
    - stdin_IO.flush
    - unknown_lines.append
    - gitdb.util.hex_to_bin
    - git.index.base.IndexFile.write
    - <builtin>.set
    - typing.BinaryIO.dereference_recursive
    - gitdb.util.LockedFD.rollback
    - out.append
    - git.index.base.IndexFile.move
    - git.index.base.IndexFile._entries_sorted
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - datetime.timedelta.re_hexsha_shortened.match
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - rev.find
    - typing.cast.dereference_recursive
    - datetime.timedelta.tree.head.ref.log_entry
    - proc.stdout.close
    - typing.cast.read_tree
    - git.repo.fun.to_commit
    - gitdb.util.LockedFD
    - gitdb.util.make_sha
    - typing.cast.tree.re_hexsha_shortened.match
    - stdin_IO.close
    - typing.BinaryIO.head.ref.log_entry
    - typing.IO.re_hexsha_shortened.match
    - struct.pack
    - git.cmd.Popen
    - typing.cast.object.head.ref.log_entry
    - typing.IO.tree.dereference_recursive
    - git.index.base.IndexFile.merge_tree
    - failed_files.append
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - paths.append
    - typing.IO.tree.re_hexsha_shortened.match
    - failed_reasons.append
    - git.cmd.Popen.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - Object.new_from_sha
    - typing.cast.object.tree.dereference_recursive
    - typing.cast.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.dereference_recursive
    - stream_sha.write_sha
    - proc.stdin.write
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast.rm
    - typing.cast
    - typing.cast.tree.object.re_hexsha_shortened.match
    - stderr.splitlines
    - git.index.base.IndexFile.reset
    - typing.cast.tree.head.ref.log_entry
    - <builtin>.len
    - datetime.timedelta.head.ref.log_entry
    - subprocess.Popen.dereference_recursive
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - stderr_IO.read
    - typing.cast.working_tree_dir.replace
    - <builtin>.type
    - stderr_bytes.decode
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.re_hexsha_shortened.match
    - typing.cast.head.ref.log_entry
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - proc.stdout.read
    - kwargs.pop
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile.<lambda3>
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - <builtin>.str
    - <builtin>.int
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.IO.dereference_recursive
    - git.index.base.IndexFile._flush_stdin_and_wait
    - typing.cast.object.working_tree_dir.replace
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.IO.head.ref.log_entry
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - git.index.base.IndexFile._to_relative_path
    - typing.cast.head.commit.tree.dereference_recursive
    - args.append
    - rev.startswith
    - typing.cast.tree.working_tree_dir.replace
    - line.startswith
    - line.rfind
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile._write_path_to_stdin
    - git.index.base.IndexFile.remove
    - os.path.relpath
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - git.util.to_native_path_linux
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - typing.IO
    - <builtin>.range
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - git.index.base.IndexFile.checkout.handle_stderr
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - folder.endswith
    - git.index.base.IndexFile.checkout
    - os.path.isabs
    - typing.cast.checkout_index
    - git.repo.fun.rev_parse
    - git.cmd.Popen.tree.dereference_recursive
    - checked_out_files.append
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 107
    functionName: git.index.util.git_working_dir.set_git_working_dir
    functionSourceFile: git.index.util
    functionUses: 0
    functionsReached:
    - typing.cast.tree.object.working_tree_dir.replace
    - <builtin>.open
    - abs_path.replace
    - git.index.typ.IndexEntry.from_blob
    - os.chdir
    - git.index.base.IndexFile._store_path
    - <builtin>.str
    - git.index.base.IndexFile._entries_for_paths
    - typing.NamedTuple.__init__
    - glob.glob
    - entries.append
    - os.stat
    - gitdb.base.IStream
    - git.index.typ.BaseIndexEntry.from_blob
    - git.index.base.IndexFile.<lambda2>
    - typing.cast.object.working_tree_dir.replace
    - entries_added.append
    - os.lstat
    - stat.S_IFMT
    - git.index.base.IndexFile.add.handle_null_entries
    - os.walk
    - struct.pack
    - typing.cast.tree.working_tree_dir.replace
    - git.index.base.IndexFile._store_path.<lambda2>
    - <builtin>.len
    - root.replace
    - os.path.join
    - git.util.to_native_path_linux
    - os.getcwd
    - git.index.base.IndexFile._iter_expand_paths
    - os.path.exists
    - typing.cast.working_tree_dir.replace
    - os.path.isabs
    - git.index.fun.stat_mode_to_index_mode
    - stat.S_ISDIR
    - typing.cast.object.head.commit.tree.working_tree_dir.replace
    - stat.S_ISLNK
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.blob
    functionSourceFile: git.objects.blob
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: git.objects.blob.Blob.mime_type
    functionSourceFile: git.objects.blob
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - mimetypes.guess_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: mimetypes.guess_type
    functionSourceFile: mimetypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.objects.tag
    functionSourceFile: git.objects.tag
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 110
    functionName: git.objects.tag.TagObject._set_cache_
    functionSourceFile: git.objects.tag
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - m.groups
    - _re_only_actor.search
    - cls.name_only_regex.search
    - typing.cast.object.odb.stream
    - git.util.Actor._from_string
    - typing.cast.odb.stream
    - git.objects.base.IndexObject.__init__
    - <builtin>.int
    - m.group
    - <builtin>.abs
    - cls.name_email_regex.search
    - ostream.read
    - git.objects.tree.Tree.__init__
    - git.objects.util.parse_actor_and_date
    - type_name.encode
    - git.objects.util.utctz_to_altz
    - git.objects.commit.Commit.__init__
    - git.objects.util.get_object_type_by_name
    - typing.cast.tree.odb.stream
    - <builtin>.len
    - git.util.Actor.__init__
    - _re_actor_epoch.search
    - typing.cast.tree.object.odb.stream
    - <builtin>.isinstance
    - gitdb.util.hex_to_bin
    - <builtin>.type
    - git.objects.tag.TagObject.__init__
    - typing.cast.object.head.commit.tree.odb.stream
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type_name.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: git.repo.fun
    functionSourceFile: git.repo.fun
    functionUses: 0
    functionsReached:
    - typing.overload
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: stat.S_ISREG
    functionSourceFile: stat
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: content.startswith
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - odb
    - hexsha
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 126
    functionName: git.repo.fun.short_to_long
    functionSourceFile: git.repo.fun
    functionUses: 29
    functionsReached:
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - gitdb.util.bin_to_hex
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.odb.partial_to_complete_sha_hex
    functionSourceFile: datetime
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: git
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: datetime
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.odb.partial_to_complete_sha_hex
    functionSourceFile: subprocess
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: subprocess
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    functionSourceFile: typing
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.odb.partial_to_complete_sha_hex
    functionSourceFile: git
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7fab5b2f79a0>
    argNames:
    - repo
    - name
    - return_ref
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 150
    functionName: git.repo.fun.name_to_object
    functionSourceFile: git.repo.fun
    functionUses: 28
    functionsReached:
    - datetime.timedelta.odb.partial_to_complete_sha_hex
    - typing.cast.object.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.dereference_recursive
    - typing.cast.tree.object.head.commit.dereference_recursive
    - typing.IO.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.odb.partial_to_complete_sha_hex
    - typing.cast.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.dereference_recursive
    - typing.BinaryIO.odb.partial_to_complete_sha_hex
    - git.repo.fun.short_to_long
    - typing.cast.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.tree.dereference_recursive
    - Object.new_from_sha
    - typing.cast.head.commit.re_hexsha_shortened.match
    - typing.cast.re_hexsha_shortened.match
    - datetime.timedelta.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.dereference_recursive
    - datetime.timedelta.re_hexsha_shortened.match
    - subprocess.Popen
    - datetime.timedelta.tree.re_hexsha_shortened.match
    - typing.cast.dereference_recursive
    - typing.cast.head.commit.tree.re_hexsha_shortened.match
    - typing.cast.object.head.commit.odb.partial_to_complete_sha_hex
    - datetime.timedelta.tree.dereference_recursive
    - typing.IO.dereference_recursive
    - typing.cast.object.tree.re_hexsha_shortened.match
    - typing.BinaryIO.tree.re_hexsha_shortened.match
    - gitdb.util.bin_to_hex
    - typing.cast.tree.dereference_recursive
    - typing.cast.tree.object.head.commit.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.re_hexsha_shortened.match
    - typing.cast.tree.re_hexsha_shortened.match
    - git.cmd.Popen.re_hexsha_shortened.match
    - typing.cast.object.dereference_recursive
    - typing.cast.object.re_hexsha_shortened.match
    - typing.cast.head.commit.dereference_recursive
    - datetime.timedelta.dereference_recursive
    - datetime.timedelta
    - subprocess.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.tree.dereference_recursive
    - typing.cast.tree.object.re_hexsha_shortened.match
    - typing.BinaryIO.tree.dereference_recursive
    - typing.IO.re_hexsha_shortened.match
    - typing.cast.tree.object.odb.partial_to_complete_sha_hex
    - typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    - typing.IO.tree.odb.partial_to_complete_sha_hex
    - <builtin>.len
    - typing.cast.object.tree.odb.partial_to_complete_sha_hex
    - subprocess.Popen.tree.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    - git.cmd.Popen
    - git.cmd.Popen.tree.re_hexsha_shortened.match
    - subprocess.Popen.tree.dereference_recursive
    - typing.IO.tree.dereference_recursive
    - subprocess.Popen.dereference_recursive
    - typing.IO
    - typing.BinaryIO
    - typing.BinaryIO.re_hexsha_shortened.match
    - typing.cast.object.head.commit.tree.odb.partial_to_complete_sha_hex
    - typing.cast.tree.head.commit.re_hexsha_shortened.match
    - typing.cast.tree.head.commit.odb.partial_to_complete_sha_hex
    - typing.cast.object.head.commit.re_hexsha_shortened.match
    - typing.cast.tree.head.commit.dereference_recursive
    - typing.cast.tree.object.dereference_recursive
    - typing.BinaryIO.tree.odb.partial_to_complete_sha_hex
    - git.cmd.Popen.odb.partial_to_complete_sha_hex
    - typing.cast.head.commit.tree.odb.partial_to_complete_sha_hex
    - gitdb.util.hex_to_bin
    - typing.IO.tree.re_hexsha_shortened.match
    - typing.BinaryIO.dereference_recursive
    - subprocess.Popen.re_hexsha_shortened.match
    - git.cmd.Popen.tree.dereference_recursive
    linkageType: pythonLinkage
    raised:
    - BadObject
    - BadName
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.re_hexsha_shortened.match
    functionSourceFile: datetime
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.re_hexsha_shortened.match
    functionSourceFile: datetime
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.commit.tree.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.re_hexsha_shortened.match
    functionSourceFile: subprocess
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.re_hexsha_shortened.match
    functionSourceFile: git
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.commit.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.tree.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.commit.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.commit.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.re_hexsha_shortened.match
    functionSourceFile: git
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.re_hexsha_shortened.match
    functionSourceFile: subprocess
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.re_hexsha_shortened.match
    functionSourceFile: typing
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Object.new_from_sha
    functionSourceFile: <builtin>
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - tag
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 208
    functionName: git.repo.fun.deref_tag
    functionSourceFile: git.repo.fun
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 219
    functionName: git.repo.fun.to_commit
    functionSourceFile: git.repo.fun
    functionUses: 28
    functionsReached:
    - git.repo.fun.deref_tag
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rev.startswith
    functionSourceFile: <builtin>
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rev.find
    functionSourceFile: <builtin>
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.head.ref.log_entry
    functionSourceFile: datetime
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.head.ref.log_entry
    functionSourceFile: git
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.object.tree.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.tree.head.ref.log_entry
    functionSourceFile: subprocess
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen.head.ref.log_entry
    functionSourceFile: subprocess
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta.tree.head.ref.log_entry
    functionSourceFile: datetime
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.tree.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.BinaryIO.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.IO.tree.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: git.cmd.Popen.tree.head.ref.log_entry
    functionSourceFile: git
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.tree.object.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.head.ref.log_entry
    functionSourceFile: typing
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...gitpython.fuzzing.fuzz-targets.fuzz_repo':
  - 7
  - 8
  - 11
  - 46
  - 47
  '...gitpython.fuzzing.fuzz-targets.fuzz_repo.TestOneInput':
  - 33
  - 36
  - 16
  - 18
  - 19
  - 22
  - 23
  - 24
  - 28
  - 30
  - 31
  '...gitpython.fuzzing.fuzz-targets.fuzz_repo.main':
  - 42
  - 43
  git:
  - 296
  - 226
  - 93
  git._getattr:
  - 198
  - 199
  - 208
  - 212
  - 217
  git._warned_import:
  - 192
  - 191
  git.cmd:
  - 65
  - 226
  - 358
  - 87
  git.cmd.Git:
  - 384
  - 417
  - 486
  - 428
  - 430
  - 431
  - 494
  - 434
  git.cmd.Git.AutoInterrupt:
  - 732
  git.cmd.Git.AutoInterrupt.__del__:
  - 790
  git.cmd.Git.AutoInterrupt.__getattr__:
  - 793
  git.cmd.Git.AutoInterrupt._terminate:
  - 769
  - 770
  - 773
  - 776
  - 781
  - 782
  - 786
  - 755
  - 756
  - 761
  - 762
  - 763
  - 764
  - 765
  - 766
  git.cmd.Git.AutoInterrupt.wait:
  - 832
  - 833
  - 809
  - 811
  - 813
  - 814
  - 797
  - 831
  git.cmd.Git.AutoInterrupt.wait.read_all_from_possibly_closed_stream:
  - 821
  - 823
  git.cmd.Git.CatFileContentStream:
  - 840
  git.cmd.Git.CatFileContentStream.__del__:
  - 944
  - 941
  git.cmd.Git.CatFileContentStream.__init__:
  - 859
  - 860
  git.cmd.Git.CatFileContentStream.__next__:
  - 931
  - 932
  git.cmd.Git.CatFileContentStream.read:
  - 865
  - 867
  - 869
  - 874
  - 875
  - 879
  - 880
  git.cmd.Git.CatFileContentStream.readline:
  - 896
  - 897
  - 900
  - 901
  - 885
  - 890
  - 891
  git.cmd.Git.CatFileContentStream.readlines:
  - 907
  - 914
  - 915
  - 917
  - 918
  - 919
  - 920
  git.cmd.Git.__call__:
  - 1488
  - 1499
  git.cmd.Git.__get_object_header:
  - 1659
  - 1660
  - 1661
  - 1662
  git.cmd.Git.__getattr__:
  - 984
  - 985
  - 978
  - 986
  git.cmd.Git.__getattr__.<lambda1>:
  - 986
  git.cmd.Git.__getattribute__:
  - 973
  - 974
  - 975
  git.cmd.Git.__getstate__:
  - 420
  git.cmd.Git.__init__:
  - 956
  - 948
  - 957
  git.cmd.Git.__setstate__:
  - 423
  git.cmd.Git._call_process:
  - 1505
  - 1569
  - 1570
  - 1572
  - 1576
  - 1515
  - 1520
  - 1525
  - 1589
  - 1592
  - 1595
  - 1562
  - 1563
  - 1596
  - 1565
  - 1598
  git.cmd.Git._get_persistent_cmd:
  - 1646
  - 1647
  - 1651
  - 1653
  - 1654
  - 1655
  git.cmd.Git._parse_object_header:
  - 1601
  - 1613
  - 1614
  - 1615
  - 1627
  - 1629
  git.cmd.Git._prepare_ref:
  - 1633
  - 1635
  - 1636
  - 1637
  - 1641
  - 1643
  git.cmd.Git._unpack_args:
  - 1480
  - 1481
  - 1483
  - 1479
  git.cmd.Git.check_unsafe_options:
  - 716
  - 723
  - 724
  - 725
  - 726
  git.cmd.Git.check_unsafe_protocols:
  - 696
  - 707
  - 708
  - 709
  git.cmd.Git.clear_cache:
  - 1718
  - 1717
  - 1710
  - 1719
  git.cmd.Git.custom_environment:
  - 1432
  - 1443
  - 1445
  - 1447
  git.cmd.Git.execute:
  - 1281
  - 1282
  - 1284
  - 1039
  - 1048
  - 1057
  - 1067
  - 1331
  - 1332
  - 1077
  - 1209
  - 1210
  - 1211
  - 1342
  - 1215
  - 1216
  - 1343
  - 1345
  - 1347
  - 1223
  - 1097
  - 1353
  - 1354
  - 1355
  - 1357
  - 1230
  - 1231
  - 1232
  - 1359
  - 1234
  - 1235
  - 1362
  - 1363
  - 1365
  - 1366
  - 1245
  - 1246
  - 1373
  - 1374
  - 1378
  - 1379
  - 1252
  - 1253
  - 1381
  - 1382
  - 1384
  - 1387
  - 1262
  - 1390
  - 1391
  - 1394
  - 1395
  - 1278
  - 1279
  git.cmd.Git.execute.as_text:
  - 1369
  git.cmd.Git.execute.communicate:
  - 1317
  - 1318
  - 1319
  - 1320
  - 1322
  - 1325
  - 1326
  git.cmd.Git.execute.kill_process:
  - 1289
  - 1293
  - 1295
  - 1296
  - 1297
  - 1298
  - 1299
  - 1300
  - 1302
  - 1303
  - 1305
  - 1309
  git.cmd.Git.get_object_data:
  - 1681
  - 1689
  - 1690
  git.cmd.Git.get_object_header:
  - 1667
  - 1677
  - 1678
  git.cmd.Git.is_cygwin:
  - 664
  git.cmd.Git.polish_url:
  - 672
  - 676
  - 682
  - 683
  - 685
  - 686
  - 688
  - 689
  - 690
  - 691
  - 668
  git.cmd.Git.refresh:
  - 644
  - 645
  - 646
  - 542
  - 543
  - 544
  - 546
  - 552
  - 559
  - 565
  - 567
  - 583
  - 595
  - 601
  - 603
  - 604
  - 621
  - 622
  - 623
  - 498
  - 628
  - 629
  - 633
  git.cmd.Git.set_persistent_git_options:
  - 989
  - 998
  git.cmd.Git.stream_object_data:
  - 1704
  - 1705
  - 1706
  - 1707
  - 1695
  git.cmd.Git.transform_kwarg:
  - 1450
  - 1451
  - 1453
  - 1454
  - 1459
  - 1460
  - 1461
  - 1462
  git.cmd.Git.transform_kwargs:
  - 1473
  - 1466
  - 1468
  - 1469
  - 1470
  - 1471
  git.cmd.Git.update_environment:
  - 1419
  - 1421
  - 1422
  - 1425
  - 1403
  git.cmd.Git.version_info:
  - 1024
  - 1025
  - 1026
  - 1027
  - 1007
  - 1018
  - 1023
  git.cmd.Git.working_dir:
  - 1002
  git.cmd._GitMeta:
  - 348
  - 333
  git.cmd._GitMeta.__getattribute:
  - 339
  - 340
  - 341
  git.cmd._GitMeta.__setattr:
  - 344
  - 345
  - 346
  git.cmd._safer_popen_windows:
  - 235
  - 268
  - 270
  - 280
  - 281
  git.cmd._warn_use_shell:
  - 325
  git.cmd.dashify:
  - 295
  git.cmd.dict_to_slots_and__excluded_are_none:
  - 304
  - 305
  - 306
  - 303
  git.cmd.handle_process_output:
  - 169
  - 170
  - 171
  - 175
  - 176
  - 180
  - 181
  - 184
  - 185
  - 186
  - 187
  - 191
  - 192
  - 194
  - 195
  - 198
  - 199
  - 200
  - 201
  - 202
  - 208
  - 212
  - 214
  - 215
  - 218
  - 220
  - 221
  - 110
  git.cmd.handle_process_output.pump_stream:
  - 162
  - 163
  - 167
  - 152
  - 153
  - 154
  - 155
  - 156
  - 157
  - 159
  git.cmd.slots_to_dict:
  - 299
  git.compat:
  - 70
  - 6
  - 105
  - 106
  - 82
  - 61
  - 95
  git.compat.__dir__:
  - 66
  git.compat._getattr:
  - 52
  git.compat.safe_decode:
  - 110
  - 114
  - 118
  - 119
  - 121
  - 122
  - 123
  git.compat.safe_encode:
  - 130
  - 134
  - 138
  - 139
  - 140
  - 141
  - 143
  git.compat.win_encode:
  - 160
  - 161
  - 163
  - 150
  - 154
  - 158
  - 159
  git.config:
  - 64
  - 67
  - 69
  - 6
  - 70
  - 44
  - 49
  - 50
  - 52
  git.config.GitConfigParser:
  - 294
  - 300
  - 272
  - 305
  - 307
  - 312
  git.config.GitConfigParser.__del__:
  - 401
  - 399
  git.config.GitConfigParser.__enter__:
  - 404
  git.config.GitConfigParser.__exit__:
  - 408
  git.config.GitConfigParser.__init__:
  - 354
  - 355
  - 323
  - 357
  - 360
  - 361
  - 363
  - 368
  - 376
  - 347
  git.config.GitConfigParser._acquire_lock:
  - 392
  - 395
  - 379
  - 380
  - 381
  - 383
  git.config.GitConfigParser._assure_writable:
  - 757
  git.config.GitConfigParser._has_includes:
  - 537
  git.config.GitConfigParser._included_paths:
  - 540
  - 547
  - 548
  - 549
  - 551
  - 552
  - 555
  - 556
  - 558
  - 559
  - 561
  - 563
  - 567
  - 568
  - 570
  - 573
  - 574
  - 575
  - 577
  - 584
  - 585
  git.config.GitConfigParser._included_paths.<lambda1>:
  - 570
  git.config.GitConfigParser._read:
  - 513
  - 516
  - 517
  - 518
  - 519
  - 522
  - 523
  - 527
  - 528
  - 533
  - 440
  - 465
  - 466
  - 470
  - 472
  - 477
  - 478
  - 479
  - 480
  - 482
  - 485
  - 491
  - 494
  - 495
  - 496
  - 498
  - 499
  - 500
  - 501
  - 503
  - 504
  - 507
  - 508
  - 510
  git.config.GitConfigParser._read.string_decode:
  - 459
  - 455
  git.config.GitConfigParser._string_to_value:
  - 835
  - 837
  - 839
  - 847
  - 848
  - 850
  - 853
  git.config.GitConfigParser._value_to_string:
  - 864
  - 862
  - 863
  git.config.GitConfigParser._write:
  - 683
  - 684
  - 687
  - 688
  - 665
  git.config.GitConfigParser._write.write_section:
  - 673
  - 674
  - 677
  - 678
  - 669
  git.config.GitConfigParser.add_section:
  - 761
  - 762
  git.config.GitConfigParser.add_value:
  - 913
  - 914
  - 915
  - 894
  git.config.GitConfigParser.get_value:
  - 776
  - 793
  - 795
  - 799
  git.config.GitConfigParser.get_values:
  - 807
  - 824
  - 825
  - 827
  - 831
  git.config.GitConfigParser.items:
  - 691
  - 692
  git.config.GitConfigParser.items_all:
  - 705
  - 706
  - 708
  - 695
  - 696
  - 698
  - 699
  - 702
  git.config.GitConfigParser.optionxform:
  - 436
  git.config.GitConfigParser.read:
  - 640
  - 641
  - 644
  - 645
  - 646
  - 648
  - 649
  - 651
  - 653
  - 661
  - 590
  - 598
  - 603
  - 606
  - 610
  - 613
  - 616
  - 619
  - 622
  - 623
  - 626
  - 628
  - 630
  - 636
  - 637
  - 638
  - 639
  git.config.GitConfigParser.read_only:
  - 766
  git.config.GitConfigParser.release:
  - 419
  - 423
  - 425
  - 432
  - 433
  - 411
  git.config.GitConfigParser.rename_section:
  - 930
  - 932
  - 935
  - 937
  - 938
  - 943
  - 919
  git.config.GitConfigParser.set_value:
  - 888
  - 869
  - 886
  - 887
  git.config.GitConfigParser.write:
  - 740
  - 741
  - 742
  - 712
  - 744
  - 745
  - 746
  - 747
  - 749
  - 718
  - 719
  - 750
  - 752
  - 722
  - 753
  - 754
  - 729
  - 730
  git.config.MetaParserBuilder:
  - 77
  git.config.MetaParserBuilder.__new__:
  - 103
  - 81
  - 86
  - 88
  - 89
  - 90
  - 91
  - 93
  - 94
  - 95
  git.config.SectionConstraint:
  - 139
  git.config.SectionConstraint.__del__:
  - 172
  git.config.SectionConstraint.__enter__:
  - 195
  git.config.SectionConstraint.__exit__:
  - 199
  git.config.SectionConstraint.__getattr__:
  - 176
  - 177
  - 175
  git.config.SectionConstraint.__getattr__.<lambda1>:
  - 176
  git.config.SectionConstraint._call_config:
  - 180
  - 182
  git.config.SectionConstraint.config:
  - 186
  git.config.SectionConstraint.release:
  - 192
  - 190
  git.config._OMD:
  - 203
  git.config._OMD.__getitem__:
  - 219
  git.config._OMD.__setitem__:
  - 206
  git.config._OMD.add:
  - 209
  - 210
  - 213
  git.config._OMD.get:
  - 233
  git.config._OMD.getall:
  - 236
  git.config._OMD.getlast:
  - 222
  git.config._OMD.items:
  - 239
  git.config._OMD.items_all:
  - 243
  - 244
  git.config._OMD.setall:
  - 216
  git.config._OMD.setlast:
  - 225
  - 226
  - 229
  git.config.get_config_path:
  - 256
  - 257
  - 258
  - 259
  - 260
  - 265
  - 267
  - 250
  - 253
  - 255
  git.config.needs_values:
  - 108
  - 111
  git.config.needs_values.assure_data_present:
  - 113
  - 114
  git.config.set_dirty_and_flush_changes:
  - 121
  git.config.set_dirty_and_flush_changes.flush_changes:
  - 128
  - 130
  git.db:
  - 4
  - 21
  git.db.GitCmdObjectDB:
  - 28
  git.db.GitCmdObjectDB.__init__:
  - 35
  - 36
  git.db.GitCmdObjectDB.info:
  - 40
  - 41
  - 42
  git.db.GitCmdObjectDB.partial_to_complete_sha_hex:
  - 65
  - 66
  - 52
  git.db.GitCmdObjectDB.stream:
  - 45
  - 46
  - 47
  git.diff:
  - 34
  - 78
  - 87
  - 282
  - 95
  git.diff.Diff:
  - 336
  - 369
  git.diff.Diff.__eq__:
  - 474
  - 475
  git.diff.Diff.__hash__:
  - 484
  git.diff.Diff.__init__:
  - 448
  - 451
  - 454
  - 457
  - 430
  - 431
  - 464
  - 465
  - 435
  - 436
  - 440
  - 441
  - 442
  - 443
  - 444
  git.diff.Diff.__str__:
  - 513
  - 515
  - 517
  - 519
  - 488
  - 490
  - 522
  - 496
  - 497
  - 502
  - 509
  - 511
  git.diff.Diff._handle_diff_line:
  - 678
  - 681
  - 683
  - 684
  - 687
  - 688
  - 691
  - 695
  - 696
  - 697
  - 698
  - 699
  - 700
  - 709
  - 712
  - 715
  - 717
  - 718
  - 719
  - 720
  - 721
  - 722
  - 723
  - 725
  - 730
  - 747
  git.diff.Diff._index_from_patch_format:
  - 640
  - 647
  - 648
  - 652
  - 653
  - 654
  - 655
  - 670
  - 671
  - 585
  - 601
  - 604
  - 605
  - 610
  - 626
  - 629
  - 630
  - 631
  - 634
  - 635
  - 639
  git.diff.Diff._index_from_raw_format:
  - 769
  - 767
  - 766
  - 751
  git.diff.Diff._index_from_raw_format.<lambda1>:
  - 769
  git.diff.Diff._pick_best_path:
  - 576
  - 578
  - 579
  - 572
  - 573
  - 575
  git.diff.Diff.a_path:
  - 533
  git.diff.Diff.b_path:
  - 537
  git.diff.Diff.rename_from:
  - 541
  git.diff.Diff.rename_to:
  - 545
  git.diff.Diff.renamed:
  - 549
  - 558
  git.diff.Diff.renamed_file:
  - 567
  git.diff.DiffConstants:
  - 68
  - 69
  - 50
  - 61
  - 62
  git.diff.DiffIndex:
  - 293
  - 286
  git.diff.DiffIndex.iter_change_type:
  - 320
  - 321
  - 322
  - 323
  - 324
  - 325
  - 326
  - 327
  - 328
  - 329
  - 330
  - 331
  - 303
  - 316
  - 319
  git.diff.Diffable:
  - 134
  - 137
  - 147
  - 122
  - 158
  git.diff.Diffable._process_diff_args:
  - 176
  git.diff.Diffable.diff:
  - 256
  - 257
  - 259
  - 260
  - 261
  - 264
  - 267
  - 268
  - 269
  - 273
  - 276
  - 278
  - 191
  - 231
  - 232
  - 235
  - 236
  - 238
  - 239
  - 240
  - 242
  - 243
  - 247
  - 249
  - 253
  - 254
  - 255
  git.diff._octal_repl:
  - 99
  - 100
  - 101
  git.diff.decode_path:
  - 106
  - 109
  - 110
  - 112
  - 114
  - 115
  git.exc:
  - 6
  - 55
  git.exc.CacheError:
  - 193
  git.exc.CheckoutError:
  - 163
  git.exc.CheckoutError.__init__:
  - 183
  git.exc.CheckoutError.__str__:
  - 189
  git.exc.CommandError:
  - 94
  - 86
  git.exc.CommandError.__init__:
  - 108
  - 109
  - 110
  - 112
  - 113
  - 114
  - 117
  - 119
  - 120
  - 122
  - 123
  - 125
  - 126
  git.exc.GitCommandError:
  - 150
  git.exc.GitCommandError.__init__:
  - 159
  git.exc.GitCommandNotFound:
  - 141
  git.exc.GitCommandNotFound.__init__:
  - 145
  git.exc.GitError:
  - 62
  git.exc.HookExecutionError:
  - 203
  git.exc.HookExecutionError.__init__:
  - 215
  git.exc.InvalidGitRepositoryError:
  - 66
  git.exc.NoSuchPathError:
  - 74
  git.exc.RepositoryDirtyError:
  - 220
  git.exc.UnmergedEntriesError:
  - 198
  git.exc.UnsafeOptionError:
  - 82
  git.exc.UnsafeProtocolError:
  - 78
  git.exc.WorkTreeRepositoryUnsupported:
  - 70
  git.index:
  - 4
  git.index.base:
  - 75
  - 6
  git.index.base.IndexFile:
  - 135
  - 138
  - 111
  git.index.base.IndexFile.__init__:
  - 141
  - 151
  git.index.base.IndexFile._commit_editmsg_filepath:
  - 1178
  git.index.base.IndexFile._delete_entries_cache:
  - 184
  git.index.base.IndexFile._deserialize:
  - 196
  - 197
  git.index.base.IndexFile._entries_for_paths:
  - 737
  - 743
  - 744
  - 745
  - 719
  - 720
  - 721
  - 723
  - 726
  - 727
  - 730
  - 733
  - 734
  git.index.base.IndexFile._entries_sorted:
  - 201
  - 202
  git.index.base.IndexFile._flush_stdin_and_wait:
  - 1184
  - 1187
  - 1188
  - 1190
  - 1191
  - 1192
  - 1182
  - 1183
  git.index.base.IndexFile._index_path:
  - 173
  - 174
  git.index.base.IndexFile._items_to_rela_paths:
  - 962
  - 965
  - 966
  - 967
  - 968
  - 969
  - 958
  git.index.base.IndexFile._iter_expand_paths:
  - 416
  - 449
  - 444
  - 421
  - 422
  - 395
  - 427
  - 428
  - 441
  - 442
  - 435
  - 436
  - 437
  - 407
  - 409
  - 410
  - 411
  - 412
  git.index.base.IndexFile._preprocess_add_items:
  - 672
  - 673
  - 674
  - 675
  - 676
  - 663
  - 667
  - 670
  - 671
  git.index.base.IndexFile._process_diff_args:
  - 638
  git.index.base.IndexFile._read_commit_editmsg:
  - 1174
  - 1175
  git.index.base.IndexFile._remove_commit_editmsg:
  - 1171
  git.index.base.IndexFile._serialize:
  - 209
  - 205
  - 207
  git.index.base.IndexFile._set_cache_:
  - 164
  - 166
  - 168
  - 170
  - 154
  - 156
  git.index.base.IndexFile._store_path:
  - 705
  - 683
  - 689
  - 690
  - 693
  - 695
  - 696
  - 697
  - 698
  - 699
  - 700
  - 702
  git.index.base.IndexFile._store_path.<lambda1>:
  - 693
  git.index.base.IndexFile._store_path.<lambda2>:
  - 695
  git.index.base.IndexFile._to_relative_path:
  - 645
  - 652
  - 654
  - 656
  - 658
  git.index.base.IndexFile._write_commit_editmsg:
  - 1168
  - 1167
  git.index.base.IndexFile._write_path_to_stdin:
  - 484
  - 487
  - 489
  - 494
  - 462
  - 496
  - 497
  - 498
  git.index.base.IndexFile.add:
  - 898
  - 899
  - 920
  - 926
  - 927
  - 928
  - 933
  - 935
  - 936
  - 937
  - 940
  - 945
  - 946
  - 948
  - 949
  - 879
  - 884
  - 885
  - 759
  - 888
  - 890
  git.index.base.IndexFile.add.handle_null_entries:
  - 905
  - 908
  - 903
  git.index.base.IndexFile.checkout:
  - 1313
  - 1314
  - 1316
  - 1317
  - 1318
  - 1319
  - 1320
  - 1321
  - 1324
  - 1330
  - 1203
  - 1332
  - 1335
  - 1337
  - 1340
  - 1341
  - 1346
  - 1348
  - 1349
  - 1351
  - 1352
  - 1354
  - 1355
  - 1361
  - 1362
  - 1363
  - 1367
  - 1377
  - 1251
  - 1252
  git.index.base.IndexFile.checkout.<lambda1>:
  - 1337
  git.index.base.IndexFile.checkout.handle_stderr:
  - 1280
  - 1281
  - 1282
  - 1283
  - 1284
  - 1285
  - 1286
  - 1288
  - 1292
  - 1293
  - 1294
  - 1295
  - 1300
  - 1302
  - 1303
  - 1260
  - 1263
  - 1265
  - 1273
  - 1274
  - 1278
  - 1279
  git.index.base.IndexFile.commit:
  - 1126
  - 1162
  - 1163
  - 1143
  - 1144
  - 1146
  - 1147
  - 1148
  - 1149
  - 1150
  - 1151
  git.index.base.IndexFile.diff:
  - 1506
  - 1508
  - 1510
  - 1482
  - 1514
  - 1518
  - 1493
  - 1496
  - 1497
  - 1502
  - 1503
  git.index.base.IndexFile.entry_key:
  - 545
  git.index.base.IndexFile.from_tree:
  - 384
  - 385
  - 386
  - 387
  - 325
  - 362
  - 367
  - 369
  - 371
  - 376
  - 377
  - 378
  git.index.base.IndexFile.iter_blobs:
  - 514
  - 515
  - 518
  - 519
  - 504
  git.index.base.IndexFile.merge_tree:
  - 288
  - 257
  - 284
  - 285
  - 286
  git.index.base.IndexFile.move:
  - 1091
  - 1095
  - 1096
  - 1097
  - 1101
  - 1105
  - 1043
  - 1078
  - 1079
  - 1110
  - 1081
  - 1082
  - 1111
  - 1085
  git.index.base.IndexFile.new:
  - 293
  - 308
  - 309
  - 311
  - 313
  - 314
  - 316
  git.index.base.IndexFile.path:
  - 180
  git.index.base.IndexFile.remove:
  - 1024
  - 1025
  - 1028
  - 1029
  - 983
  - 1023
  git.index.base.IndexFile.reset:
  - 1440
  - 1441
  - 1443
  - 1390
  - 1455
  - 1457
  - 1458
  - 1461
  - 1462
  - 1435
  - 1436
  git.index.base.IndexFile.resolve_blobs:
  - 548
  - 581
  - 566
  - 568
  - 573
  git.index.base.IndexFile.unmerged_blobs:
  - 523
  - 533
  - 535
  - 536
  - 538
  - 539
  git.index.base.IndexFile.update:
  - 587
  - 597
  git.index.base.IndexFile.write:
  - 238
  - 239
  - 240
  - 251
  - 243
  - 245
  - 248
  - 219
  git.index.base.IndexFile.write_tree:
  - 620
  - 621
  - 622
  - 625
  - 629
  - 602
  git.index.base._named_temporary_file_for_subprocess:
  - 98
  - 99
  - 100
  - 102
  - 104
  - 106
  - 107
  - 89
  git.index.fun:
  - 48
  - 57
  - 4
  git.index.fun._has_file_extension:
  - 68
  git.index.fun._tree_entry_to_baseindexentry:
  - 363
  git.index.fun.aggressive_tree_merge:
  - 384
  - 385
  - 390
  - 394
  - 395
  - 397
  - 399
  - 403
  - 407
  - 408
  - 409
  - 410
  - 412
  - 416
  - 419
  - 421
  - 422
  - 429
  - 433
  - 435
  - 436
  - 445
  - 448
  - 449
  - 451
  - 454
  - 455
  - 456
  - 459
  - 367
  - 383
  git.index.fun.entry_key:
  - 233
  - 227
  - 229
  - 215
  git.index.fun.hook_path:
  - 64
  - 63
  git.index.fun.read_cache:
  - 259
  - 260
  - 261
  - 262
  - 264
  - 266
  - 267
  - 268
  - 241
  - 280
  - 281
  - 282
  - 252
  git.index.fun.read_header:
  - 202
  - 203
  - 204
  - 206
  git.index.fun.run_commit_hook:
  - 97
  - 100
  - 101
  - 72
  - 112
  - 113
  - 114
  - 115
  - 116
  - 85
  - 86
  - 117
  - 89
  - 90
  - 94
  git.index.fun.stat_mode_to_index_mode:
  - 123
  - 125
  - 127
  git.index.fun.write_cache:
  - 138
  - 155
  - 162
  - 163
  - 166
  - 167
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 175
  - 176
  - 188
  - 189
  - 190
  - 194
  - 195
  - 198
  git.index.fun.write_tree_from_cache:
  - 322
  - 354
  - 355
  - 356
  - 326
  - 327
  - 296
  - 329
  - 358
  - 336
  - 337
  - 345
  - 346
  git.index.typ:
  - 4
  - 21
  git.index.typ.BaseIndexEntry:
  - 93
  git.index.typ.BaseIndexEntry.__new__:
  - 108
  - 110
  git.index.typ.BaseIndexEntry.from_blob:
  - 139
  - 140
  git.index.typ.BaseIndexEntry.hexsha:
  - 120
  - 121
  git.index.typ.BaseIndexEntry.stage:
  - 125
  git.index.typ.BaseIndexEntry.to_blob:
  - 144
  - 143
  git.index.typ.BaseIndexEntryHelper:
  - 73
  - 83
  - 84
  git.index.typ.BlobFilter:
  - 39
  git.index.typ.BlobFilter.__call__:
  - 65
  - 67
  - 58
  - 59
  - 60
  git.index.typ.BlobFilter.__init__:
  - 49
  git.index.typ.IndexEntry:
  - 148
  git.index.typ.IndexEntry.ctime:
  - 164
  - 159
  git.index.typ.IndexEntry.from_base:
  - 173
  - 182
  - 181
  git.index.typ.IndexEntry.from_blob:
  - 186
  - 187
  - 188
  git.index.typ.IndexEntry.mtime:
  - 168
  - 169
  git.index.util:
  - 4
  - 22
  git.index.util.TemporaryFileSwap:
  - 34
  git.index.util.TemporaryFileSwap.__exit__:
  - 56
  - 57
  git.index.util.TemporaryFileSwap.__init__:
  - 41
  - 42
  - 43
  - 44
  - 45
  git.index.util.default_index:
  - 89
  - 83
  git.index.util.default_index.check_default_index:
  - 91
  - 95
  git.index.util.git_working_dir:
  - 106
  - 103
  git.index.util.git_working_dir.set_git_working_dir:
  - 113
  - 108
  - 109
  - 111
  git.index.util.post_clear_cache:
  - 65
  - 71
  git.index.util.post_clear_cache.post_clear_cache_if_not_raised:
  - 73
  - 74
  git.objects:
  - 4
  git.objects.base:
  - 23
  git.objects.base.IndexObject:
  - 218
  git.objects.base.IndexObject.__hash__:
  - 265
  - 270
  git.objects.base.IndexObject.__init__:
  - 258
  - 259
  - 261
  - 238
  git.objects.base.IndexObject._set_cache_:
  - 280
  - 273
  git.objects.base.IndexObject.abspath:
  - 290
  - 299
  - 298
  git.objects.base.IndexObject.name:
  - 285
  - 286
  git.objects.base.Object:
  - 85
  - 39
  git.objects.base.Object.__eq__:
  - 163
  - 164
  git.objects.base.Object.__hash__:
  - 176
  - 175
  git.objects.base.Object.__init__:
  - 114
  - 116
  - 101
  - 111
  git.objects.base.Object.__ne__:
  - 169
  - 170
  git.objects.base.Object.__repr__:
  - 183
  git.objects.base.Object.__str__:
  - 179
  git.objects.base.Object._set_cache_:
  - 160
  - 155
  - 156
  - 157
  git.objects.base.Object.data_stream:
  - 201
  - 194
  git.objects.base.Object.hexsha:
  - 188
  - 190
  git.objects.base.Object.new:
  - 121
  - 134
  git.objects.base.Object.new_from_sha:
  - 138
  - 145
  - 147
  - 149
  - 150
  git.objects.base.Object.stream_data:
  - 212
  - 204
  - 213
  git.objects.blob:
  - 11
  git.objects.blob.Blob:
  - 20
  git.objects.blob.Blob.mime_type:
  - 46
  - 38
  - 47
  git.objects.commit:
  - 64
  - 58
  - 51
  git.objects.commit.Commit:
  - 68
  git.objects.commit.Commit.__init__:
  - 192
  - 194
  - 196
  - 172
  - 174
  - 175
  - 176
  - 178
  - 180
  - 182
  - 184
  - 186
  - 188
  - 125
  - 190
  git.objects.commit.Commit._calculate_sha_:
  - 205
  - 214
  - 215
  - 216
  - 217
  - 219
  git.objects.commit.Commit._deserialize:
  - 784
  - 789
  - 790
  - 794
  - 796
  - 801
  - 804
  - 805
  - 806
  - 807
  - 808
  - 818
  - 820
  - 821
  - 822
  - 823
  - 826
  - 827
  - 829
  - 830
  - 835
  - 836
  - 838
  - 846
  - 848
  - 860
  - 862
  - 872
  - 874
  - 876
  git.objects.commit.Commit._get_intermediate_items:
  - 201
  git.objects.commit.Commit._iter_from_process_or_stream:
  - 545
  - 514
  - 546
  - 548
  - 551
  - 552
  - 557
  - 558
  - 559
  - 532
  - 533
  - 534
  - 536
  - 537
  - 542
  - 543
  git.objects.commit.Commit._serialize:
  - 768
  - 772
  - 775
  - 776
  - 778
  - 725
  - 726
  - 727
  - 733
  - 734
  - 741
  - 748
  - 749
  - 756
  - 761
  - 762
  - 765
  - 766
  - 767
  git.objects.commit.Commit._set_cache_:
  - 242
  - 244
  - 245
  - 247
  git.objects.commit.Commit.authored_datetime:
  - 252
  git.objects.commit.Commit.co_authors:
  - 900
  - 901
  - 906
  - 907
  - 890
  git.objects.commit.Commit.committed_datetime:
  - 256
  git.objects.commit.Commit.count:
  - 283
  - 267
  - 284
  - 285
  git.objects.commit.Commit.create_from_tree:
  - 640
  - 643
  - 644
  - 647
  - 648
  - 651
  - 652
  - 653
  - 654
  - 655
  - 660
  - 661
  - 662
  - 663
  - 664
  - 670
  - 671
  - 672
  - 677
  - 678
  - 682
  - 697
  - 699
  - 574
  - 705
  - 709
  - 715
  - 620
  - 628
  - 629
  git.objects.commit.Commit.iter_items:
  - 329
  - 338
  - 307
  - 340
  - 343
  - 345
  - 348
  - 349
  git.objects.commit.Commit.iter_parents:
  - 352
  - 370
  - 365
  - 366
  git.objects.commit.Commit.name_rev:
  - 289
  - 297
  git.objects.commit.Commit.replace:
  - 229
  - 231
  - 232
  - 235
  - 236
  - 237
  - 223
  git.objects.commit.Commit.stats:
  - 389
  - 390
  - 393
  - 395
  - 398
  - 399
  - 374
  git.objects.commit.Commit.stats.process_lines:
  - 384
  - 385
  - 383
  git.objects.commit.Commit.summary:
  - 264
  - 260
  - 261
  - 262
  git.objects.commit.Commit.trailers:
  - 418
  - 403
  - 413
  git.objects.commit.Commit.trailers_dict:
  - 474
  - 507
  - 508
  - 509
  - 510
  git.objects.commit.Commit.trailers_list:
  - 454
  - 422
  - 459
  - 460
  - 462
  - 466
  - 467
  - 468
  git.objects.fun:
  - 4
  - 30
  git.objects.fun._find_by_name:
  - 144
  - 145
  - 130
  - 138
  git.objects.fun._to_full_path:
  - 162
  - 154
  - 163
  - 158
  git.objects.fun.traverse_tree_recursive:
  - 257
  - 271
  - 274
  - 275
  - 276
  - 278
  git.objects.fun.traverse_trees_recursive:
  - 228
  - 198
  - 199
  - 200
  - 230
  - 234
  - 171
  - 204
  - 235
  - 206
  - 236
  - 243
  - 214
  - 215
  - 216
  - 220
  - 223
  git.objects.fun.tree_entries_from_data:
  - 78
  - 118
  - 87
  - 88
  - 89
  - 124
  git.objects.fun.tree_to_stream:
  - 69
  - 70
  - 73
  - 42
  - 50
  - 53
  - 55
  - 56
  - 60
  git.objects.submodule.base:
  - 73
  - 65
  - 58
  git.objects.submodule.base.Submodule:
  - 113
  - 98
  - 116
  git.objects.submodule.base.Submodule.__eq__:
  - 203
  git.objects.submodule.base.Submodule.__hash__:
  - 214
  - 215
  git.objects.submodule.base.Submodule.__init__:
  - 160
  - 162
  - 164
  - 133
  - 157
  git.objects.submodule.base.Submodule.__ne__:
  - 210
  git.objects.submodule.base.Submodule.__repr__:
  - 222
  git.objects.submodule.base.Submodule._clear_cache:
  - 272
  - 273
  - 275
  git.objects.submodule.base.Submodule._clone_repo:
  - 352
  - 353
  - 322
  - 354
  - 356
  - 363
  - 364
  - 347
  - 349
  - 351
  git.objects.submodule.base.Submodule._config_parser:
  - 257
  - 233
  - 265
  - 269
  - 243
  - 252
  - 253
  git.objects.submodule.base.Submodule._config_parser_constrained:
  - 301
  - 299
  - 300
  - 293
  git.objects.submodule.base.Submodule._get_intermediate_items:
  - 193
  - 195
  - 191
  git.objects.submodule.base.Submodule._module_abspath:
  - 305
  - 306
  - 307
  - 308
  git.objects.submodule.base.Submodule._set_cache_:
  - 168
  - 169
  - 172
  - 174
  - 180
  - 182
  - 183
  - 186
  git.objects.submodule.base.Submodule._sio_modules:
  - 288
  - 283
  git.objects.submodule.base.Submodule._to_relative_path:
  - 387
  - 388
  - 370
  - 375
  - 376
  - 380
  - 381
  - 382
  git.objects.submodule.base.Submodule._write_git_file_and_module_config:
  - 418
  - 419
  - 420
  - 421
  - 422
  - 423
  - 425
  - 426
  - 397
  - 429
  git.objects.submodule.base.Submodule.add:
  - 515
  - 519
  - 522
  - 523
  - 527
  - 535
  - 538
  - 544
  - 551
  - 552
  - 554
  - 555
  - 564
  - 565
  - 568
  - 571
  - 449
  - 578
  - 582
  - 583
  - 587
  - 591
  - 604
  - 612
  - 613
  - 617
  - 618
  - 619
  - 622
  - 624
  - 628
  - 630
  git.objects.submodule.base.Submodule.branch:
  - 1486
  - 1479
  git.objects.submodule.base.Submodule.branch_name:
  - 1505
  - 1499
  git.objects.submodule.base.Submodule.branch_path:
  - 1490
  git.objects.submodule.base.Submodule.children:
  - 1565
  - 1559
  git.objects.submodule.base.Submodule.config_reader:
  - 1556
  - 1541
  git.objects.submodule.base.Submodule.config_writer:
  - 1317
  - 1342
  - 1343
  git.objects.submodule.base.Submodule.exists:
  - 1472
  - 1441
  - 1449
  - 1450
  - 1452
  - 1453
  - 1460
  - 1464
  - 1470
  - 1471
  git.objects.submodule.base.Submodule.iter_items:
  - 1629
  - 1623
  - 1608
  - 1609
  - 1579
  - 1585
  - 1586
  - 1618
  - 1626
  - 1591
  - 1592
  - 1593
  - 1594
  - 1596
  - 1597
  git.objects.submodule.base.Submodule.module:
  - 1417
  - 1418
  - 1406
  git.objects.submodule.base.Submodule.module_exists:
  - 1434
  - 1428
  git.objects.submodule.base.Submodule.move:
  - 1024
  - 1028
  - 1029
  - 1031
  - 1043
  - 1044
  - 1047
  - 1048
  - 1049
  - 1057
  - 1059
  - 1062
  - 1069
  - 1070
  - 1074
  - 1075
  - 1082
  - 1083
  - 969
  - 998
  - 1002
  - 1005
  - 1009
  - 1010
  - 1015
  - 1017
  - 1022
  - 1023
  git.objects.submodule.base.Submodule.name:
  - 1528
  git.objects.submodule.base.Submodule.parent_commit:
  - 1514
  - 1523
  - 1522
  git.objects.submodule.base.Submodule.remove:
  - 1153
  - 1158
  - 1159
  - 1161
  - 1168
  - 1170
  - 1172
  - 1175
  - 1177
  - 1181
  - 1192
  - 1195
  - 1196
  - 1199
  - 1209
  - 1217
  - 1218
  - 1221
  - 1222
  - 1095
  - 1226
  - 1227
  - 1228
  - 1233
  - 1234
  - 1238
  - 1242
  - 1246
  - 1251
  - 1252
  - 1254
  - 1255
  - 1138
  - 1144
  - 1146
  - 1149
  git.objects.submodule.base.Submodule.rename:
  - 1377
  - 1378
  - 1350
  - 1383
  - 1384
  - 1385
  - 1388
  - 1389
  - 1390
  - 1393
  - 1394
  - 1395
  - 1365
  - 1369
  - 1373
  - 1374
  git.objects.submodule.base.Submodule.set_parent_commit:
  - 1281
  - 1285
  - 1287
  - 1261
  - 1294
  - 1295
  - 1296
  - 1306
  - 1310
  git.objects.submodule.base.Submodule.update:
  - 771
  - 903
  - 648
  - 777
  - 779
  - 908
  - 914
  - 789
  - 922
  - 923
  - 796
  - 797
  - 928
  - 930
  - 933
  - 809
  - 941
  - 943
  - 816
  - 819
  - 948
  - 821
  - 822
  - 950
  - 951
  - 952
  - 826
  - 830
  - 834
  - 836
  - 844
  - 845
  - 718
  - 722
  - 723
  - 853
  - 726
  - 731
  - 859
  - 861
  - 862
  - 863
  - 739
  - 868
  - 741
  - 742
  - 744
  - 875
  - 748
  - 881
  - 755
  - 756
  - 759
  - 889
  - 762
  - 891
  - 892
  - 890
  - 895
  git.objects.submodule.base.Submodule.url:
  - 1509
  git.objects.submodule.base.UpdateProgress:
  - 81
  - 77
  git.objects.submodule.root:
  - 26
  - 20
  git.objects.submodule.root.RootModule:
  - 50
  git.objects.submodule.root.RootModule.__init__:
  - 70
  - 62
  git.objects.submodule.root.RootModule._clear_cache:
  - 74
  git.objects.submodule.root.RootModule.module:
  - 461
  git.objects.submodule.root.RootModule.update:
  - 384
  - 260
  - 388
  - 383
  - 265
  - 266
  - 395
  - 398
  - 273
  - 275
  - 276
  - 152
  - 280
  - 408
  - 156
  - 157
  - 161
  - 289
  - 290
  - 418
  - 420
  - 425
  - 170
  - 298
  - 172
  - 173
  - 299
  - 427
  - 181
  - 184
  - 185
  - 186
  - 187
  - 314
  - 441
  - 443
  - 444
  - 192
  - 194
  - 323
  - 196
  - 202
  - 332
  - 333
  - 209
  - 339
  - 216
  - 345
  - 91
  - 219
  - 226
  - 227
  - 356
  - 233
  - 234
  - 367
  - 241
  - 242
  - 370
  - 244
  - 378
  - 379
  - 252
  - 255
  git.objects.submodule.root.RootUpdateProgress:
  - 34
  - 30
  git.objects.submodule.util:
  - 25
  git.objects.submodule.util.SubmoduleConfigParser:
  - 72
  git.objects.submodule.util.SubmoduleConfigParser.__init__:
  - 86
  git.objects.submodule.util.SubmoduleConfigParser.flush_to_index:
  - 98
  - 100
  - 101
  - 103
  - 106
  - 107
  - 95
  git.objects.submodule.util.SubmoduleConfigParser.set_submodule:
  - 90
  - 92
  git.objects.submodule.util.SubmoduleConfigParser.write:
  - 114
  - 115
  git.objects.submodule.util.find_first_remote_branch:
  - 56
  - 54
  git.objects.submodule.util.mkhead:
  - 49
  - 50
  git.objects.submodule.util.sm_name:
  - 43
  - 44
  git.objects.submodule.util.sm_section:
  - 38
  git.objects.tag:
  - 26
  - 6
  - 31
  git.objects.tag.TagObject:
  - 42
  git.objects.tag.TagObject.__init__:
  - 96
  - 97
  - 99
  - 101
  - 71
  - 103
  - 105
  - 107
  git.objects.tag.TagObject._set_cache_:
  - 129
  - 134
  - 135
  - 140
  - 111
  - 112
  - 113
  - 114
  - 116
  - 117
  - 118
  - 119
  - 123
  git.objects.tree:
  - 42
  - 35
  - 53
  git.objects.tree.Tree:
  - 163
  git.objects.tree.Tree.__contains__:
  - 386
  - 387
  - 374
  - 375
  - 376
  git.objects.tree.Tree.__getitem__:
  - 368
  - 362
  - 364
  - 366
  git.objects.tree.Tree.__getslice__:
  - 353
  git.objects.tree.Tree.__init__:
  - 199
  git.objects.tree.Tree.__iter__:
  - 356
  git.objects.tree.Tree.__len__:
  - 359
  git.objects.tree.Tree.__reversed__:
  - 393
  git.objects.tree.Tree.__truediv__:
  - 275
  - 271
  git.objects.tree.Tree._deserialize:
  - 407
  git.objects.tree.Tree._get_intermediate_items:
  - 206
  - 207
  git.objects.tree.Tree._iter_convert_to_object:
  - 224
  - 226
  - 220
  - 223
  git.objects.tree.Tree._serialize:
  - 403
  - 396
  git.objects.tree.Tree._set_cache_:
  - 216
  - 211
  - 213
  - 214
  git.objects.tree.Tree.blobs:
  - 284
  git.objects.tree.Tree.cache:
  - 289
  - 299
  git.objects.tree.Tree.join:
  - 257
  - 261
  - 262
  - 263
  - 232
  - 264
  - 242
  - 245
  - 246
  - 248
  - 252
  git.objects.tree.Tree.list_traverse:
  - 348
  - 341
  git.objects.tree.Tree.traverse:
  - 328
  - 330
  - 311
  git.objects.tree.Tree.trees:
  - 279
  git.objects.tree.TreeModifier:
  - 57
  git.objects.tree.TreeModifier.__delitem__:
  - 154
  - 155
  - 156
  git.objects.tree.TreeModifier._index_by_name:
  - 72
  - 73
  - 71
  git.objects.tree.TreeModifier.add:
  - 96
  - 128
  - 132
  - 115
  - 117
  - 120
  - 121
  - 125
  - 126
  git.objects.tree.TreeModifier.add_unchecked:
  - 148
  - 140
  - 151
  git.objects.tree.TreeModifier.set_done:
  - 89
  - 81
  git.objects.util:
  - 322
  - 323
  - 6
  - 77
  - 208
  - 53
  - 86
  git.objects.util.ProcessStreamAdapter:
  - 351
  git.objects.util.ProcessStreamAdapter.__getattr__:
  - 365
  git.objects.util.ProcessStreamAdapter.__init__:
  - 362
  git.objects.util.Serializable:
  - 581
  git.objects.util.Serializable._deserialize:
  - 603
  git.objects.util.Serializable._serialize:
  - 588
  git.objects.util.Traversable:
  - 370
  git.objects.util.Traversable._get_intermediate_items:
  - 389
  git.objects.util.Traversable._list_traverse:
  - 448
  - 419
  - 431
  - 440
  - 441
  - 442
  git.objects.util.Traversable._traverse:
  - 547
  - 549
  - 552
  - 553
  - 556
  - 525
  - 526
  - 527
  - 563
  - 567
  - 568
  - 572
  - 477
  - 575
  git.objects.util.Traversable._traverse.addToStack:
  - 535
  - 536
  - 538
  - 539
  - 541
  - 542
  git.objects.util.Traversable.list_traverse:
  - 402
  - 414
  - 407
  git.objects.util.Traversable.traverse:
  - 465
  - 458
  - 453
  git.objects.util.TraversableIterableObj.list_traverse:
  - 620
  git.objects.util.TraversableIterableObj.traverse:
  - 647
  - 623
  - 689
  - 659
  - 691
  - 635
  - 671
  git.objects.util.altz_to_utctz_str:
  - 168
  - 165
  - 166
  - 159
  git.objects.util.from_timestamp:
  - 216
  - 212
  - 214
  git.objects.util.get_object_type_by_name:
  - 130
  - 134
  - 138
  - 114
  - 126
  git.objects.util.mode_str_to_int:
  - 104
  - 105
  - 106
  - 92
  git.objects.util.parse_actor_and_date:
  - 327
  - 335
  - 336
  - 337
  - 339
  - 340
  - 341
  git.objects.util.parse_date:
  - 257
  - 258
  - 261
  - 266
  - 267
  - 268
  - 271
  - 272
  - 273
  - 274
  - 276
  - 277
  - 278
  - 289
  - 291
  - 293
  - 294
  - 307
  - 223
  - 239
  - 240
  - 241
  - 242
  - 243
  - 249
  - 250
  - 251
  - 253
  - 254
  git.objects.util.tzoffset.__init__:
  - 192
  git.objects.util.tzoffset.__reduce__:
  - 196
  git.objects.util.utctz_to_altz:
  - 153
  - 154
  - 147
  git.objects.util.verify_utctz:
  - 172
  - 179
  - 180
  - 182
  - 184
  git.refresh:
  - 264
  - 289
  - 287
  git.refs.head:
  - 24
  - 4
  git.refs.head.HEAD:
  - 39
  git.refs.head.HEAD.__init__:
  - 51
  - 53
  git.refs.head.HEAD.orig_head:
  - 56
  - 61
  git.refs.head.HEAD.reset:
  - 99
  - 71
  - 104
  - 109
  - 111
  - 117
  - 121
  git.refs.head.Head:
  - 129
  git.refs.head.Head._config_parser:
  - 280
  - 281
  - 283
  - 286
  git.refs.head.Head.checkout:
  - 269
  - 270
  - 272
  - 273
  - 242
  git.refs.head.Head.config_reader:
  - 289
  - 294
  git.refs.head.Head.config_writer:
  - 297
  - 302
  git.refs.head.Head.delete:
  - 160
  - 153
  - 162
  git.refs.head.Head.rename:
  - 217
  - 234
  - 237
  git.refs.head.Head.set_tracking_branch:
  - 165
  - 176
  - 180
  - 181
  - 182
  - 183
  - 184
  - 185
  - 187
  - 188
  - 190
  git.refs.head.Head.tracking_branch:
  - 196
  - 203
  - 204
  - 205
  - 207
  - 209
  - 210
  git.refs.head.strip_quotes:
  - 33
  git.refs.log:
  - 33
  git.refs.log.RefLog:
  - 152
  git.refs.log.RefLog.__init__:
  - 171
  - 172
  - 167
  git.refs.log.RefLog.__new__:
  - 163
  git.refs.log.RefLog._deserialize:
  - 396
  git.refs.log.RefLog._read_from_file:
  - 184
  - 177
  - 186
  git.refs.log.RefLog._serialize:
  - 390
  - 391
  git.refs.log.RefLog.append_entry:
  - 353
  - 358
  - 359
  - 360
  - 361
  - 363
  - 365
  - 366
  - 339
  - 308
  - 342
  - 343
  - 344
  - 347
  - 348
  - 350
  - 351
  git.refs.log.RefLog.entry_at:
  - 265
  - 266
  - 267
  - 270
  - 271
  - 272
  - 277
  - 246
  git.refs.log.RefLog.from_file:
  - 193
  - 204
  git.refs.log.RefLog.iter_entries:
  - 230
  - 232
  - 233
  - 238
  - 239
  - 241
  - 220
  git.refs.log.RefLog.path:
  - 208
  - 216
  git.refs.log.RefLog.to_file:
  - 289
  - 291
  - 292
  - 294
  - 281
  - 286
  - 287
  git.refs.log.RefLog.write:
  - 376
  - 379
  - 371
  git.refs.log.RefLogEntry:
  - 43
  - 45
  git.refs.log.RefLogEntry.__repr__:
  - 50
  - 51
  git.refs.log.RefLogEntry.actor:
  - 79
  git.refs.log.RefLogEntry.format:
  - 57
  - 54
  - 63
  git.refs.log.RefLogEntry.from_line:
  - 134
  - 135
  - 140
  - 141
  - 145
  - 114
  - 146
  - 148
  - 122
  - 123
  - 124
  - 126
  git.refs.log.RefLogEntry.message:
  - 93
  git.refs.log.RefLogEntry.new:
  - 106
  - 107
  - 110
  git.refs.log.RefLogEntry.newhexsha:
  - 74
  git.refs.log.RefLogEntry.oldhexsha:
  - 69
  git.refs.log.RefLogEntry.time:
  - 84
  git.refs.reference:
  - 16
  git.refs.reference.Reference:
  - 42
  git.refs.reference.Reference.__init__:
  - 68
  - 71
  - 55
  git.refs.reference.Reference.iter_items:
  - 144
  - 141
  git.refs.reference.Reference.name:
  - 128
  - 129
  - 122
  - 131
  git.refs.reference.Reference.remote_head:
  - 165
  - 174
  - 173
  git.refs.reference.Reference.remote_name:
  - 153
  - 158
  git.refs.reference.Reference.set_object:
  - 97
  - 99
  - 113
  - 84
  - 90
  - 92
  git.refs.reference.require_remote_ref_path:
  - 25
  git.refs.reference.require_remote_ref_path.wrapper:
  - 29
  - 31
  git.refs.remote:
  - 4
  - 20
  git.refs.remote.RemoteReference:
  - 28
  git.refs.remote.RemoteReference.create:
  - 78
  git.refs.remote.RemoteReference.delete:
  - 65
  - 67
  - 71
  - 55
  - 61
  git.refs.remote.RemoteReference.iter_items:
  - 41
  - 43
  - 44
  - 47
  git.refs.symbolic:
  - 47
  - 39
  git.refs.symbolic.SymbolicReference:
  - 500
  - 396
  - 61
  - 390
  git.refs.symbolic.SymbolicReference.__eq__:
  - 88
  - 89
  git.refs.symbolic.SymbolicReference.__hash__:
  - 97
  git.refs.symbolic.SymbolicReference.__str__:
  - 82
  git.refs.symbolic.SymbolicReference._check_ref_name_valid:
  - 192
  - 194
  - 195
  - 197
  - 201
  - 203
  - 175
  - 209
  - 211
  - 181
  - 182
  - 213
  - 215
  - 187
  - 188
  git.refs.symbolic.SymbolicReference._create:
  - 704
  - 705
  - 706
  - 713
  - 714
  - 683
  - 689
  - 690
  - 691
  - 695
  - 696
  - 698
  - 699
  - 700
  - 701
  - 702
  git.refs.symbolic.SymbolicReference._get_commit:
  - 297
  - 298
  - 291
  - 302
  git.refs.symbolic.SymbolicReference._get_object:
  - 288
  - 281
  git.refs.symbolic.SymbolicReference._get_packed_refs_path:
  - 114
  git.refs.symbolic.SymbolicReference._get_ref_info:
  - 278
  - 271
  git.refs.symbolic.SymbolicReference._get_ref_info_helper:
  - 256
  - 225
  - 260
  - 232
  - 233
  - 264
  - 236
  - 238
  - 239
  - 242
  - 243
  - 248
  - 249
  git.refs.symbolic.SymbolicReference._get_reference:
  - 412
  - 403
  - 411
  - 414
  git.refs.symbolic.SymbolicReference._iter_items:
  - 836
  - 837
  - 838
  - 843
  - 845
  - 814
  - 816
  - 820
  - 821
  - 823
  - 827
  - 828
  - 830
  - 831
  git.refs.symbolic.SymbolicReference._iter_packed_refs:
  - 128
  - 130
  - 139
  - 147
  - 118
  - 150
  - 125
  - 126
  - 127
  git.refs.symbolic.SymbolicReference.abspath:
  - 110
  git.refs.symbolic.SymbolicReference.create:
  - 758
  - 727
  git.refs.symbolic.SymbolicReference.delete:
  - 640
  - 645
  - 646
  - 648
  - 658
  - 661
  - 662
  - 668
  - 669
  - 670
  - 615
  - 625
  - 626
  - 627
  - 628
  - 631
  - 633
  - 637
  - 638
  - 639
  git.refs.symbolic.SymbolicReference.dereference_recursive:
  - 168
  - 169
  - 158
  git.refs.symbolic.SymbolicReference.from_path:
  - 902
  - 912
  - 881
  - 913
  - 895
  git.refs.symbolic.SymbolicReference.is_detached:
  - 528
  - 522
  git.refs.symbolic.SymbolicReference.is_remote:
  - 925
  - 926
  git.refs.symbolic.SymbolicReference.is_valid:
  - 514
  - 508
  git.refs.symbolic.SymbolicReference.iter_items:
  - 858
  - 877
  git.refs.symbolic.SymbolicReference.log:
  - 534
  - 543
  git.refs.symbolic.SymbolicReference.log_append:
  - 576
  - 579
  - 551
  - 571
  - 573
  git.refs.symbolic.SymbolicReference.log_entry:
  - 594
  - 582
  git.refs.symbolic.SymbolicReference.name:
  - 106
  - 101
  git.refs.symbolic.SymbolicReference.rename:
  - 800
  - 801
  - 802
  - 805
  - 779
  - 780
  - 783
  - 784
  - 785
  - 786
  - 788
  - 789
  - 790
  - 791
  - 792
  - 761
  - 797
  git.refs.symbolic.SymbolicReference.set_commit:
  - 324
  - 326
  - 330
  - 336
  - 341
  - 312
  git.refs.symbolic.SymbolicReference.set_object:
  - 384
  - 385
  - 388
  - 373
  - 350
  git.refs.symbolic.SymbolicReference.set_reference:
  - 482
  - 451
  - 484
  - 453
  - 421
  - 485
  - 456
  - 487
  - 458
  - 488
  - 490
  - 493
  - 494
  - 468
  - 473
  git.refs.symbolic.SymbolicReference.to_full_path:
  - 609
  - 604
  - 598
  - 607
  git.refs.symbolic._git_dir:
  - 53
  - 55
  git.refs.tag:
  - 4
  - 21
  git.refs.tag.TagReference:
  - 30
  git.refs.tag.TagReference.commit:
  - 57
  - 50
  git.refs.tag.TagReference.create:
  - 97
  - 130
  - 133
  - 137
  - 140
  - 145
  - 146
  git.refs.tag.TagReference.delete:
  - 150
  - 151
  git.refs.tag.TagReference.object:
  - 85
  git.refs.tag.TagReference.tag:
  - 72
  - 78
  git.remote:
  - 48
  - 57
  - 6
  git.remote.FetchInfo:
  - 289
  - 317
  - 319
  git.remote.FetchInfo.__init__:
  - 359
  git.remote.FetchInfo._from_line:
  - 513
  - 401
  - 402
  - 413
  - 414
  - 416
  - 417
  - 433
  - 435
  - 438
  - 441
  - 443
  - 445
  - 447
  - 455
  - 457
  - 462
  - 467
  - 477
  - 478
  - 487
  - 489
  - 494
  - 499
  - 501
  - 503
  - 508
  - 381
  - 511
  git.remote.FetchInfo.commit:
  - 376
  git.remote.FetchInfo.name:
  - 371
  git.remote.FetchInfo.refresh:
  - 344
  - 338
  - 332
  - 340
  git.remote.PushInfo:
  - 157
  - 119
  git.remote.PushInfo.__init__:
  - 178
  git.remote.PushInfo._from_line:
  - 258
  - 260
  - 229
  - 230
  - 233
  - 265
  - 236
  - 240
  - 241
  - 243
  - 245
  - 247
  - 216
  - 249
  - 218
  - 251
  git.remote.PushInfo.old_commit:
  - 191
  git.remote.PushInfo.remote_ref:
  - 195
  - 202
  - 203
  - 204
  - 205
  - 206
  - 208
  git.remote.PushInfoList:
  - 273
  git.remote.PushInfoList.__init__:
  - 279
  git.remote.PushInfoList.__new__:
  - 276
  git.remote.PushInfoList.raise_if_error:
  - 283
  - 284
  git.remote.Remote:
  - 521
  - 553
  git.remote.Remote.__eq__:
  - 602
  git.remote.Remote.__getattr__:
  - 576
  - 578
  - 568
  - 570
  - 571
  git.remote.Remote.__hash__:
  - 608
  git.remote.Remote.__init__:
  - 556
  git.remote.Remote._assert_refspec:
  - 992
  - 988
  - 998
  git.remote.Remote._get_fetch_info_from_stderr:
  - 901
  - 902
  - 903
  - 904
  - 906
  - 907
  - 908
  - 909
  - 910
  - 914
  - 915
  - 916
  - 918
  - 919
  - 920
  - 925
  - 926
  - 927
  - 928
  - 935
  - 937
  - 939
  - 940
  - 878
  - 881
  - 889
  - 891
  - 892
  git.remote.Remote._get_push_info:
  - 965
  - 973
  - 975
  - 979
  - 949
  - 981
  - 982
  - 955
  - 956
  git.remote.Remote._get_push_info.stdout_handler:
  - 960
  git.remote.Remote._set_cache_:
  - 585
  - 588
  - 589
  - 590
  - 593
  git.remote.Remote.add:
  - 817
  git.remote.Remote.add_url:
  - 682
  - 668
  git.remote.Remote.config_reader:
  - 1214
  git.remote.Remote.config_writer:
  - 1248
  - 1247
  - 1244
  - 1231
  git.remote.Remote.create:
  - 808
  - 809
  - 810
  - 811
  - 812
  - 783
  git.remote.Remote.delete_url:
  - 696
  - 685
  git.remote.Remote.exists:
  - 617
  - 611
  git.remote.Remote.fetch:
  - 1057
  - 1059
  - 1060
  - 1065
  - 1066
  - 1067
  - 1068
  - 1070
  - 1071
  - 1073
  - 1010
  - 1076
  - 1077
  - 1078
  - 1055
  git.remote.Remote.iter_items:
  - 627
  - 628
  - 629
  - 631
  - 632
  - 633
  - 635
  git.remote.Remote.pull:
  - 1120
  - 1121
  - 1090
  - 1122
  - 1124
  - 1125
  - 1127
  - 1130
  - 1131
  - 1132
  - 1114
  - 1116
  - 1117
  - 1119
  git.remote.Remote.push:
  - 1190
  - 1192
  - 1193
  - 1194
  - 1195
  - 1197
  - 1198
  - 1200
  - 1144
  - 1210
  git.remote.Remote.refs:
  - 733
  - 742
  - 743
  git.remote.Remote.remove:
  - 826
  - 827
  - 828
  - 821
  git.remote.Remote.rename:
  - 842
  - 852
  - 850
  - 847
  git.remote.Remote.rm:
  - 833
  - 839
  git.remote.Remote.set_url:
  - 641
  - 657
  - 658
  - 661
  - 662
  - 664
  git.remote.Remote.stale_refs:
  - 768
  - 770
  - 772
  - 773
  - 776
  - 748
  - 763
  - 764
  git.remote.Remote.update:
  - 857
  - 869
  git.remote.Remote.urls:
  - 704
  - 705
  - 712
  - 714
  - 715
  - 716
  - 717
  - 718
  - 720
  - 722
  - 723
  - 724
  - 725
  - 700
  - 702
  - 703
  git.remote.add_progress:
  - 67
  - 77
  - 79
  git.remote.to_progress_instance:
  - 98
  - 104
  - 107
  - 108
  - 111
  - 112
  - 90
  - 94
  git.repo:
  - 4
  git.repo.base:
  - 86
  - 95
  git.repo.base.Repo:
  - 132
  - 165
  - 932
  - 137
  - 106
  - 138
  - 139
  - 140
  - 141
  - 142
  - 169
  - 368
  - 888
  - 152
  - 124
  - 127
  git.repo.base.Repo.__del__:
  - 329
  git.repo.base.Repo.__eq__:
  - 347
  git.repo.base.Repo.__exit__:
  - 325
  git.repo.base.Repo.__hash__:
  - 355
  git.repo.base.Repo.__init__:
  - 258
  - 259
  - 260
  - 261
  - 262
  - 263
  - 264
  - 267
  - 268
  - 269
  - 270
  - 272
  - 273
  - 274
  - 276
  - 277
  - 281
  - 283
  - 284
  - 288
  - 294
  - 300
  - 301
  - 179
  - 307
  - 312
  - 315
  - 316
  - 317
  - 319
  - 215
  - 216
  - 217
  - 218
  - 222
  - 224
  - 225
  - 226
  - 227
  - 228
  - 233
  - 234
  - 235
  - 246
  git.repo.base.Repo.__ne__:
  - 352
  git.repo.base.Repo._clone:
  - 1408
  - 1409
  - 1411
  - 1412
  - 1416
  - 1417
  - 1419
  - 1422
  - 1428
  - 1430
  - 1360
  - 1363
  - 1364
  - 1372
  - 1373
  - 1374
  - 1375
  - 1377
  - 1378
  - 1380
  - 1381
  - 1382
  - 1383
  - 1384
  - 1385
  - 1387
  - 1390
  - 1396
  - 1398
  - 1399
  - 1402
  - 1407
  git.repo.base.Repo._config_reader:
  - 688
  - 690
  - 692
  - 695
  - 696
  git.repo.base.Repo._get_alternates:
  - 897
  - 902
  - 903
  - 905
  - 906
  - 907
  - 908
  git.repo.base.Repo._get_config_path:
  - 641
  - 643
  - 644
  - 645
  - 646
  - 647
  - 648
  - 650
  - 653
  - 655
  - 657
  - 634
  - 638
  git.repo.base.Repo._get_daemon_export:
  - 875
  - 876
  - 877
  git.repo.base.Repo._get_description:
  - 360
  - 361
  - 359
  git.repo.base.Repo._get_untracked_files:
  - 999
  - 1003
  - 1004
  - 1005
  - 1007
  - 1009
  - 1012
  - 1013
  - 1014
  git.repo.base.Repo._set_alternates:
  - 929
  - 930
  - 912
  - 924
  - 925
  - 926
  - 927
  git.repo.base.Repo._set_daemon_export:
  - 880
  - 881
  - 882
  - 883
  - 884
  - 885
  - 886
  git.repo.base.Repo._set_description:
  - 364
  - 365
  - 366
  git.repo.base.Repo._to_full_tag_path:
  - 561
  - 562
  - 564
  git.repo.base.Repo.active_branch:
  - 1043
  git.repo.base.Repo.archive:
  - 1592
  - 1586
  - 1588
  - 1591
  - 1560
  - 1593
  - 1596
  git.repo.base.Repo.bare:
  - 392
  git.repo.base.Repo.blame:
  - 1154
  - 1290
  - 1169
  - 1170
  - 1172
  - 1191
  - 1193
  - 1204
  - 1209
  - 1214
  - 1215
  - 1217
  - 1218
  - 1220
  - 1223
  - 1224
  - 1234
  - 1235
  - 1236
  - 1238
  - 1239
  - 1240
  - 1242
  - 1243
  - 1245
  - 1246
  - 1247
  - 1255
  - 1257
  - 1259
  - 1260
  - 1262
  - 1263
  - 1264
  - 1266
  - 1267
  - 1269
  - 1276
  - 1278
  - 1279
  git.repo.base.Repo.blame_incremental:
  - 1055
  - 1074
  - 1077
  - 1081
  - 1084
  - 1086
  - 1087
  - 1088
  - 1089
  - 1095
  - 1098
  - 1103
  - 1105
  - 1110
  - 1112
  - 1113
  - 1114
  - 1115
  - 1117
  - 1118
  - 1119
  - 1120
  - 1122
  - 1131
  - 1134
  - 1135
  - 1139
  - 1141
  - 1142
  - 1143
  git.repo.base.Repo.branches:
  - 407
  git.repo.base.Repo.clone:
  - 1480
  - 1443
  - 1484
  git.repo.base.Repo.clone_from:
  - 1504
  - 1538
  - 1539
  - 1540
  - 1541
  git.repo.base.Repo.close:
  - 334
  - 335
  - 340
  - 341
  - 342
  - 343
  - 344
  git.repo.base.Repo.commit:
  - 724
  - 716
  - 726
  git.repo.base.Repo.common_dir:
  - 383
  git.repo.base.Repo.config_reader:
  - 664
  - 681
  git.repo.base.Repo.config_writer:
  - 713
  - 699
  git.repo.base.Repo.create_head:
  - 576
  - 585
  git.repo.base.Repo.create_remote:
  - 627
  - 619
  git.repo.base.Repo.create_submodule:
  - 512
  - 503
  git.repo.base.Repo.create_tag:
  - 603
  - 612
  git.repo.base.Repo.currently_rebasing_on:
  - 1632
  - 1634
  - 1635
  - 1636
  - 1624
  - 1630
  - 1631
  git.repo.base.Repo.delete_head:
  - 593
  - 588
  git.repo.base.Repo.delete_remote:
  - 630
  - 631
  git.repo.base.Repo.delete_tag:
  - 616
  - 615
  git.repo.base.Repo.has_separate_working_tree:
  - 1600
  - 1610
  - 1612
  - 1613
  git.repo.base.Repo.head:
  - 456
  - 452
  git.repo.base.Repo.heads:
  - 403
  - 397
  git.repo.base.Repo.ignored:
  - 1018
  - 1039
  - 1029
  - 1031
  git.repo.base.Repo.index:
  - 448
  - 439
  git.repo.base.Repo.init:
  - 1344
  - 1345
  - 1340
  - 1337
  - 1338
  - 1339
  - 1308
  - 1343
  git.repo.base.Repo.is_ancestor:
  - 849
  - 835
  - 847
  git.repo.base.Repo.is_dirty:
  - 960
  - 961
  - 962
  - 963
  - 965
  - 968
  - 970
  - 973
  - 974
  - 946
  - 952
  - 959
  git.repo.base.Repo.is_valid_object:
  - 864
  - 871
  - 856
  - 857
  - 858
  - 859
  - 862
  git.repo.base.Repo.iter_commits:
  - 786
  - 764
  - 789
  git.repo.base.Repo.iter_submodules:
  - 523
  - 515
  git.repo.base.Repo.iter_trees:
  - 729
  - 734
  git.repo.base.Repo.merge_base:
  - 812
  - 818
  - 820
  - 792
  - 828
  - 829
  git.repo.base.Repo.references:
  - 424
  - 418
  git.repo.base.Repo.refs:
  - 428
  git.repo.base.Repo.remote:
  - 474
  - 475
  - 469
  git.repo.base.Repo.remotes:
  - 466
  - 460
  git.repo.base.Repo.submodule:
  - 491
  git.repo.base.Repo.submodule_update:
  - 533
  - 526
  git.repo.base.Repo.submodules:
  - 488
  - 483
  git.repo.base.Repo.tag:
  - 548
  - 557
  - 556
  git.repo.base.Repo.tags:
  - 545
  - 539
  git.repo.base.Repo.tree:
  - 737
  - 754
  - 756
  git.repo.base.Repo.untracked_files:
  - 995
  - 981
  git.repo.base.Repo.working_tree_dir:
  - 374
  git.repo.fun:
  - 40
  - 4
  git.repo.fun.deref_tag:
  - 209
  git.repo.fun.find_submodule_git_dir:
  - 100
  - 101
  - 105
  - 106
  - 111
  - 114
  - 118
  - 119
  - 120
  - 121
  git.repo.fun.find_worktree_git_dir:
  - 81
  - 83
  - 86
  - 90
  - 91
  - 92
  git.repo.fun.is_git_dir:
  - 65
  - 66
  - 67
  - 69
  - 70
  - 71
  - 72
  - 73
  - 74
  - 58
  git.repo.fun.name_to_object:
  - 164
  - 165
  - 196
  - 167
  - 201
  - 205
  - 143
  - 175
  - 176
  - 147
  - 151
  - 185
  - 186
  - 187
  git.repo.fun.rev_parse:
  - 257
  - 386
  - 387
  - 389
  - 391
  - 392
  - 267
  - 269
  - 276
  - 278
  - 408
  - 281
  - 282
  - 409
  - 284
  - 413
  - 288
  - 289
  - 416
  - 296
  - 297
  - 298
  - 303
  - 305
  - 307
  - 308
  - 312
  - 313
  - 314
  - 315
  - 320
  - 326
  - 333
  - 338
  - 348
  - 231
  - 359
  - 362
  - 363
  - 372
  - 380
  - 381
  - 382
  - 383
  git.repo.fun.short_to_long:
  - 136
  - 127
  git.repo.fun.to_commit:
  - 224
  - 220
  - 221
  - 222
  git.repo.fun.touch:
  - 52
  git.types:
  - 101
  - 134
  - 39
  - 169
  - 44
  - 47
  - 49
  - 50
  - 81
  - 180
  - 53
  - 22
  - 121
  - 186
  - 191
  git.types.Files_TD:
  - 242
  git.types.HSH_TD:
  - 268
  git.types.Has_Repo:
  - 276
  git.types.Has_id_attribute:
  - 283
  git.types.Total_TD:
  - 255
  git.types.__dir__:
  - 174
  git.types._getattr:
  - 154
  - 157
  git.types.assert_never:
  - 216
  - 234
  - 235
  git.util:
  - 162
  - 290
  - 414
  - 409
  - 109
  - 112
  - 437
  - 157
  - 413
  - 408
  - 89
  - 158
  - 412
  - 29
  - 30
  - 415
  git.util.<lambda1>:
  - 409
  git.util.Actor:
  - 768
  - 773
  - 774
  git.util.Actor.__hash__:
  - 800
  git.util.Actor._from_string:
  - 810
  - 820
  - 821
  - 822
  - 823
  - 825
  - 826
  - 827
  - 829
  git.util.Actor._main_actor:
  - 864
  - 865
  - 867
  - 868
  - 840
  - 852
  - 858
  - 860
  - 862
  git.util.Actor._main_actor.default_email:
  - 845
  - 846
  git.util.Actor._main_actor.default_name:
  - 850
  git.util.Actor.author:
  - 890
  - 892
  git.util.Actor.committer:
  - 875
  - 886
  git.util.BlockingLockFile:
  - 1073
  git.util.BlockingLockFile.__init__:
  - 1089
  - 1098
  git.util.BlockingLockFile._obtain_lock:
  - 1125
  - 1128
  - 1132
  - 1103
  - 1108
  - 1109
  - 1112
  - 1116
  - 1117
  - 1119
  git.util.CallableRemoteProgress:
  - 748
  git.util.CallableRemoteProgress.__init__:
  - 761
  git.util.CallableRemoteProgress.update:
  - 764
  git.util.IndexFileSHA1Writer:
  - 960
  git.util.IndexFileSHA1Writer.__init__:
  - 974
  git.util.IndexFileSHA1Writer.close:
  - 986
  - 987
  git.util.IndexFileSHA1Writer.tell:
  - 991
  git.util.IndexFileSHA1Writer.write:
  - 977
  - 978
  git.util.IndexFileSHA1Writer.write_sha:
  - 981
  - 982
  git.util.Iterable:
  - 1307
  git.util.Iterable.iter_items:
  - 1319
  git.util.Iterable.list_items:
  - 1332
  - 1341
  - 1342
  git.util.IterableClassWatcher:
  - 1290
  git.util.IterableClassWatcher.__init__:
  - 1296
  - 1294
  - 1295
  git.util.IterableList:
  - 1139
  git.util.IterableList.__contains__:
  - 1188
  - 1179
  - 1180
  git.util.IterableList.__delitem__:
  - 1217
  - 1219
  - 1220
  - 1223
  - 1224
  - 1229
  - 1233
  git.util.IterableList.__getattr__:
  - 1200
  - 1196
  - 1197
  git.util.IterableList.__getitem__:
  - 1203
  - 1205
  - 1206
  - 1207
  - 1211
  git.util.IterableList.__new__:
  - 1170
  git.util.IterableObj:
  - 1238
  git.util.IterableObj.iter_items:
  - 1259
  git.util.IterableObj.list_items:
  - 1272
  - 1284
  - 1285
  git.util.LockFile:
  - 995
  git.util.LockFile.__del__:
  - 1010
  git.util.LockFile._has_lock:
  - 1017
  git.util.LockFile._lock_file_path:
  - 1013
  git.util.LockFile._obtain_lock:
  - 1051
  - 1055
  git.util.LockFile._obtain_lock_or_raise:
  - 1027
  - 1033
  - 1035
  - 1036
  - 1043
  git.util.LockFile._release_lock:
  - 1064
  - 1058
  - 1059
  - 1066
  git.util.RemoteProgress:
  - 592
  - 593
  - 579
  - 564
  git.util.RemoteProgress._parse_progress_line:
  - 641
  - 643
  - 645
  - 647
  - 649
  - 651
  - 660
  - 667
  - 668
  - 672
  - 676
  - 677
  - 679
  - 681
  - 683
  - 685
  - 686
  - 602
  - 614
  - 615
  - 620
  - 621
  - 625
  - 626
  - 627
  - 629
  - 630
  - 631
  - 636
  - 639
  git.util.RemoteProgress.line_dropped:
  - 705
  git.util.RemoteProgress.new_message_handler:
  - 691
  git.util.RemoteProgress.new_message_handler.handler:
  - 698
  git.util.RemoteProgress.update:
  - 715
  git.util.Stats:
  - 896
  git.util.Stats._list_from_string:
  - 930
  - 941
  - 942
  - 943
  - 944
  - 955
  - 956
  git.util._cygexpath:
  - 386
  - 391
  - 392
  - 393
  - 397
  - 398
  - 399
  - 400
  - 401
  git.util._get_exe_extensions:
  - 338
  - 339
  - 340
  - 341
  git.util._is_cygwin_git:
  - 456
  - 457
  - 460
  - 461
  - 462
  - 463
  - 466
  - 467
  - 468
  - 472
  git.util._read_env_flag:
  - 131
  - 133
  - 135
  - 137
  - 116
  - 126
  git.util._read_win_env_flag:
  - 142
  - 151
  git.util.assure_directory_exists:
  - 328
  - 329
  - 331
  - 332
  - 319
  git.util.cwd:
  - 193
  - 195
  - 185
  - 190
  - 191
  git.util.cygpath:
  - 420
  - 421
  - 423
  - 424
  - 425
  - 426
  - 427
  - 428
  - 429
  git.util.decygpath:
  - 441
  - 442
  - 443
  - 444
  - 445
  - 447
  git.util.expand_path:
  - 514
  - 518
  - 519
  - 521
  - 522
  - 523
  - 524
  - 508
  git.util.finalize_process:
  - 504
  - 501
  git.util.get_user_id:
  - 496
  - 497
  git.util.is_cygwin_git:
  - 483
  - 487
  - 489
  - 492
  - 479
  git.util.join_path:
  - 273
  - 275
  - 276
  - 277
  - 278
  - 280
  - 282
  git.util.join_path_native:
  - 315
  - 310
  git.util.patch_env:
  - 200
  - 201
  - 204
  - 206
  git.util.py_where:
  - 361
  - 373
  - 375
  - 376
  - 377
  - 378
  - 379
  - 348
  - 381
  - 380
  git.util.py_where.is_exec:
  - 368
  - 365
  - 366
  git.util.remove_password_if_present:
  - 544
  - 547
  - 548
  - 549
  - 550
  - 551
  - 530
  - 539
  - 540
  - 542
  git.util.rmfile:
  - 246
  - 248
  - 249
  - 250
  - 251
  git.util.rmtree:
  - 237
  - 238
  - 239
  - 240
  - 242
  - 213
  git.util.rmtree.handler:
  - 229
  - 226
  - 221
  - 231
  git.util.stream_copy:
  - 263
  - 264
  - 265
  - 266
  - 255
  git.util.to_native_path_linux:
  - 304
  - 297
  - 298
  git.util.to_native_path_windows:
  - 293
  - 294
  git.util.unbare_repo:
  - 171
  - 166
  git.util.unbare_repo.wrapper:
  - 176
  - 173
Fuzzer filename: /src/gitpython/fuzzing/fuzz-targets/fuzz_repo.py
Inheritance:
  git.cmd.Git: []
  git.cmd.Git.AutoInterrupt: []
  git.cmd.Git.CatFileContentStream: []
  git.cmd._GitMeta:
  - type
  git.config.GitConfigParser: []
  git.config.MetaParserBuilder: []
  git.config.SectionConstraint: []
  git.config._OMD:
  - OrderedDict_OMD
  git.db.GitCmdObjectDB:
  - LooseObjectDB
  git.diff.Diff: []
  git.diff.DiffConstants: []
  git.diff.DiffIndex: []
  git.diff.Diffable: []
  git.exc.CacheError:
  - GitError
  git.exc.CheckoutError:
  - GitError
  git.exc.CommandError:
  - GitError
  git.exc.GitCommandError:
  - CommandError
  git.exc.GitCommandNotFound:
  - CommandError
  git.exc.GitError:
  - Exception
  git.exc.HookExecutionError:
  - CommandError
  git.exc.InvalidGitRepositoryError:
  - GitError
  git.exc.NoSuchPathError:
  - GitError
  - OSError
  git.exc.RepositoryDirtyError:
  - GitError
  git.exc.UnmergedEntriesError:
  - CacheError
  git.exc.UnsafeOptionError:
  - GitError
  git.exc.UnsafeProtocolError:
  - GitError
  git.exc.WorkTreeRepositoryUnsupported:
  - InvalidGitRepositoryError
  git.index.base.IndexFile:
  - LazyMixin
  - Serializable
  git.index.typ.BaseIndexEntry:
  - BaseIndexEntryHelper
  git.index.typ.BaseIndexEntryHelper:
  - NamedTuple
  git.index.typ.BlobFilter: []
  git.index.typ.IndexEntry:
  - BaseIndexEntry
  git.index.util.TemporaryFileSwap: []
  git.objects.base.IndexObject:
  - Object
  git.objects.base.Object:
  - LazyMixin
  git.objects.blob.Blob: []
  git.objects.commit.Commit:
  - TraversableIterableObj
  - Diffable
  - Serializable
  git.objects.submodule.base.Submodule:
  - TraversableIterableObj
  - IndexObject
  git.objects.submodule.base.UpdateProgress:
  - RemoteProgress
  git.objects.submodule.root.RootModule:
  - Submodule
  git.objects.submodule.root.RootUpdateProgress:
  - UpdateProgress
  git.objects.submodule.util.SubmoduleConfigParser:
  - GitConfigParser
  git.objects.tag.TagObject: []
  git.objects.tree.Tree:
  - IndexObject
  git.objects.tree.TreeModifier: []
  git.objects.util.ProcessStreamAdapter: []
  git.objects.util.Serializable:
  - Protocol
  git.objects.util.Traversable:
  - Protocol
  git.objects.util.TraversableIterableObj:
  - Traversable
  - IterableObj
  git.objects.util.TraverseNT:
  - NamedTuple
  git.objects.util.tzoffset:
  - tzinfo
  git.refs.head.HEAD:
  - SymbolicReference
  git.refs.head.Head:
  - Reference
  git.refs.log.RefLog:
  - Serializable
  git.refs.log.RefLogEntry: []
  git.refs.reference.Reference:
  - SymbolicReference
  - LazyMixin
  - IterableObj
  git.refs.remote.RemoteReference:
  - Head
  git.refs.symbolic.SymbolicReference: []
  git.refs.tag.TagReference:
  - Reference
  git.remote.FetchInfo:
  - IterableObj
  git.remote.PushInfo:
  - IterableObj
  git.remote.PushInfoList: []
  git.remote.Remote:
  - LazyMixin
  - IterableObj
  git.repo.base.BlameEntry:
  - NamedTuple
  git.repo.base.Repo: []
  git.repo.base.Repo.blame.InfoTD:
  - TypedDict
  git.types.Files_TD:
  - TypedDict
  git.types.HSH_TD:
  - TypedDict
  git.types.Has_Repo:
  - Protocol
  git.types.Has_id_attribute:
  - Protocol
  git.types.Total_TD:
  - TypedDict
  git.util.Actor: []
  git.util.BlockingLockFile:
  - LockFile
  git.util.CallableRemoteProgress:
  - RemoteProgress
  git.util.IndexFileSHA1Writer: []
  git.util.Iterable: []
  git.util.IterableClassWatcher:
  - type
  git.util.IterableList: []
  git.util.IterableObj:
  - Protocol
  git.util.LockFile: []
  git.util.RemoteProgress: []
  git.util.Stats: []
ep:
  func_name: TestOneInput
  module: '...gitpython.fuzzing.fuzz-targets.fuzz_repo'
