diff --git a/packages/cli/src/util/getAppSourceZip.ts b/packages/cli/src/util/getAppSourceZip.ts index 2bd14df1..3d2b5f63 100644 --- a/packages/cli/src/util/getAppSourceZip.ts +++ b/packages/cli/src/util/getAppSourceZip.ts @@ -48,6 +48,18 @@ async function addDirectoryToZip( ignoredPaths: ignore.Ignore, relativePath = '' ): Promise { + // Check for nested .gitignore + const nestedGitignorePath = path.join(dir, '.gitignore'); + try { + const nestedGitignoreContent = await fsp.readFile(nestedGitignorePath, 'utf-8'); + const nestedGitignorePaths = nestedGitignoreContent + .split(/\r?\n/) + .map((line) => line.trim()); + ignoredPaths = ignore().add(ignoredPaths).add(nestedGitignorePaths); + } catch { + // no-op + } + const entries = await fsp.readdir(dir, { withFileTypes: true }); // Process entries in parallel