| … | … | @@ -605,6 +605,7 @@ echo "[post-receive] Auto-deploy triggered for $REPO_NAME" |
| 605 | 605 | |
| 606 | 606 | /** |
| 607 | 607 | * List all registered repositories |
| 608 | * Filters out repos whose bare directory contains a .pear-git-ignore marker | |
| 608 | 609 | */ |
| 609 | 610 | async listAll() { |
| 610 | 611 | const repos = [] |
| … | … | @@ -613,6 +614,12 @@ echo "[post-receive] Auto-deploy triggered for $REPO_NAME" |
| 613 | 614 | gt: 'repo:', |
| 614 | 615 | lt: 'repo:\xff' |
| 615 | 616 | })) { |
| 617 | // Skip repos with .pear-git-ignore marker on disk | |
| 618 | if (entry.value && entry.value.path) { | |
| 619 | const ignoreMarker = path.join(entry.value.path, '.pear-git-ignore') | |
| 620 | const ignored = await fs.promises.stat(ignoreMarker).catch(() => null) | |
| 621 | if (ignored) continue | |
| 622 | } | |
| 616 | 623 | repos.push(entry.value) |
| 617 | 624 | } |
| 618 | 625 | } catch (err) { |