From 09d008fc91afb1159237085e1bbfef2e4779f0be Mon Sep 17 00:00:00 2001 From: Dominik Jain Date: Fri, 20 Jun 2025 14:01:25 +0200 Subject: [PATCH] Simplify and speed up GitignoreParser._find_gitignore_files --- src/serena/util/file_system.py | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/src/serena/util/file_system.py b/src/serena/util/file_system.py index fa8ee32..4e88a9a 100644 --- a/src/serena/util/file_system.py +++ b/src/serena/util/file_system.py @@ -1,3 +1,4 @@ +import glob import os from collections.abc import Callable from dataclasses import dataclass, field @@ -134,18 +135,7 @@ class GitignoreParser: :return: List of absolute paths to .gitignore files """ - gitignore_files = [] - - for root, dirs, files in os.walk(self.repo_root): - # Skip .git directory - if ".git" in dirs: - dirs.remove(".git") - - if ".gitignore" in files: - gitignore_path = os.path.join(root, ".gitignore") - gitignore_files.append(gitignore_path) - - return gitignore_files + return glob.glob(self.repo_root + "/.gitignore") + glob.glob(self.repo_root + "/**/.gitignore") def _create_ignore_spec(self, gitignore_file_path: str) -> GitignoreSpec: """