diff --git a/aider/main.py b/aider/main.py index ac5eb19e7..f36ab7272 100644 --- a/aider/main.py +++ b/aider/main.py @@ -177,9 +177,15 @@ def check_gitignore(git_root, io, ask=True): if content and not content.endswith("\n"): content += "\n" content += "\n".join(patterns_to_add) + "\n" - io.write_text(gitignore_file, content) - - io.tool_output(f"Added {', '.join(patterns_to_add)} to .gitignore") + + try: + io.write_text(gitignore_file, content) + io.tool_output(f"Added {', '.join(patterns_to_add)} to .gitignore") + except PermissionError: + io.tool_error(f"Permission denied when trying to write to {gitignore_file}") + io.tool_output("Try running with appropriate permissions or manually add these patterns to .gitignore:") + for pattern in patterns_to_add: + io.tool_output(f" {pattern}") def check_streamlit_install(io):