mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-25 14:55:00 +00:00
refactor: move UnableToCountRepoFiles to repo.py and raise from get_tracked_files
This commit is contained in:
parent
3afc3d9089
commit
c97f699492
2 changed files with 19 additions and 9 deletions
|
@ -12,7 +12,7 @@ from prompt_toolkit.enums import EditingMode
|
||||||
from aider import __version__, models, utils
|
from aider import __version__, models, utils
|
||||||
from aider.args import get_parser
|
from aider.args import get_parser
|
||||||
from aider.coders import Coder
|
from aider.coders import Coder
|
||||||
from aider.coders.base_coder import UnableToCountRepoFiles
|
from aider.repo import UnableToCountRepoFiles
|
||||||
from aider.commands import Commands, SwitchCoder
|
from aider.commands import Commands, SwitchCoder
|
||||||
from aider.format_settings import format_settings, scrub_sensitive_info
|
from aider.format_settings import format_settings, scrub_sensitive_info
|
||||||
from aider.history import ChatSummary
|
from aider.history import ChatSummary
|
||||||
|
|
|
@ -11,6 +11,10 @@ from aider.sendchat import simple_send_with_retries
|
||||||
from .dump import dump # noqa: F401
|
from .dump import dump # noqa: F401
|
||||||
|
|
||||||
|
|
||||||
|
class UnableToCountRepoFiles(Exception):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class GitRepo:
|
class GitRepo:
|
||||||
repo = None
|
repo = None
|
||||||
aider_ignore_file = None
|
aider_ignore_file = None
|
||||||
|
@ -255,16 +259,22 @@ class GitRepo:
|
||||||
if commit in self.tree_files:
|
if commit in self.tree_files:
|
||||||
files = self.tree_files[commit]
|
files = self.tree_files[commit]
|
||||||
else:
|
else:
|
||||||
|
try:
|
||||||
for blob in commit.tree.traverse():
|
for blob in commit.tree.traverse():
|
||||||
if blob.type == "blob": # blob is a file
|
if blob.type == "blob": # blob is a file
|
||||||
files.add(blob.path)
|
files.add(blob.path)
|
||||||
files = set(self.normalize_path(path) for path in files)
|
files = set(self.normalize_path(path) for path in files)
|
||||||
self.tree_files[commit] = set(files)
|
self.tree_files[commit] = set(files)
|
||||||
|
except Exception as e:
|
||||||
|
raise UnableToCountRepoFiles(f"Error traversing commit tree: {str(e)}")
|
||||||
|
|
||||||
# Add staged files
|
# Add staged files
|
||||||
|
try:
|
||||||
index = self.repo.index
|
index = self.repo.index
|
||||||
staged_files = [path for path, _ in index.entries.keys()]
|
staged_files = [path for path, _ in index.entries.keys()]
|
||||||
files.update(self.normalize_path(path) for path in staged_files)
|
files.update(self.normalize_path(path) for path in staged_files)
|
||||||
|
except Exception as e:
|
||||||
|
raise UnableToCountRepoFiles(f"Error getting staged files: {str(e)}")
|
||||||
|
|
||||||
res = [fname for fname in files if not self.ignored_file(fname)]
|
res = [fname for fname in files if not self.ignored_file(fname)]
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue