From 2e7c5d6cfaafe0026c47bb4d6a499acd7bfa3ee6 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Tue, 26 Nov 2024 15:00:33 -0800 Subject: [PATCH] fix: handle permission error when writing to .gitignore --- aider/main.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) 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):