diff --git a/extensions/git/src/git.ts b/extensions/git/src/git.ts index 5e1eb1925dc78..431d50b88afee 100644 --- a/extensions/git/src/git.ts +++ b/extensions/git/src/git.ts @@ -1374,7 +1374,10 @@ export class Repository { throw new GitError({ message: 'Path not known by git', gitErrorCode: GitErrorCodes.UnknownPath }); } - const { mode, object } = elements[0]; + const { mode, object } = treeish !== '' + ? elements.find(e => e.stage === treeish.substring(1)) ?? elements[0] + : elements[0]; + const catFile = await this.exec(['cat-file', '-s', object]); const size = parseInt(catFile.stdout);