Mercurial > public > mercurial-scm > hg
comparison hgext/git/manifest.py @ 44930:47ce28a78f4a
git: properly visit child tree objects when resolving a path
author | Josef 'Jeff' Sipek <jeffpc@josefsipek.net> |
---|---|
date | Mon, 01 Jun 2020 09:49:47 -0400 |
parents | 3679c88b7f4e |
children | f294b4e14fd0 |
comparison
equal
deleted
inserted
replaced
44929:3679c88b7f4e | 44930:47ce28a78f4a |
---|---|
54 if val is None: | 54 if val is None: |
55 raise KeyError | 55 raise KeyError |
56 return val | 56 return val |
57 t = self._tree | 57 t = self._tree |
58 comps = upath.split('/') | 58 comps = upath.split('/') |
59 te = self._tree | |
59 for comp in comps[:-1]: | 60 for comp in comps[:-1]: |
60 te = self._tree[comp] | 61 te = te[comp] |
61 t = self._git_repo[te.id] | 62 t = self._git_repo[te.id] |
62 ent = t[comps[-1]] | 63 ent = t[comps[-1]] |
63 if ent.filemode == pygit2.GIT_FILEMODE_BLOB: | 64 if ent.filemode == pygit2.GIT_FILEMODE_BLOB: |
64 flags = b'' | 65 flags = b'' |
65 elif ent.filemode == pygit2.GIT_FILEMODE_BLOB_EXECUTABLE: | 66 elif ent.filemode == pygit2.GIT_FILEMODE_BLOB_EXECUTABLE: |