diff --git a/lib/util/git/index.spec.ts b/lib/util/git/index.spec.ts index 52159d6073583d..19ca3642dff979 100644 --- a/lib/util/git/index.spec.ts +++ b/lib/util/git/index.spec.ts @@ -208,7 +208,8 @@ describe('util/git/index', () => { it('should exclude submodules', async () => { const repo = Git(base.path); await repo.submoduleAdd(base.path, 'submodule'); - await repo.commit('Add submodule'); + await repo.submoduleAdd(base.path, 'file'); + await repo.commit('Add submodules'); await git.initRepo({ cloneSubmodules: true, url: base.path, diff --git a/lib/util/git/index.ts b/lib/util/git/index.ts index baf1d6bdada5d5..00dd79e1adf3dc 100644 --- a/lib/util/git/index.ts +++ b/lib/util/git/index.ts @@ -529,7 +529,6 @@ export async function checkoutBranch(branchName: string): Promise { export async function getFileList(): Promise { await syncGit(); const branch = config.currentBranch; - const submodules = await getSubmodules(); let files: string; try { files = await git.raw(['ls-tree', '-r', branch]); @@ -547,14 +546,12 @@ export async function getFileList(): Promise { if (!files) { return []; } + // submodules are starting with `160000 commit` return files .split(newlineRegex) .filter(is.string) .filter((line) => line.startsWith('100')) - .map((line) => line.split(regEx(/\t/)).pop()!) - .filter((file) => - submodules.every((submodule: string) => !file.startsWith(submodule)) - ); + .map((line) => line.split(regEx(/\t/)).pop()!); } export function getBranchList(): string[] {