Skip to content

fix: update .gitignore files to include additional ignored patterns - #1367

Merged
shunkakinoki merged 1 commit into
mainfrom
git-ignore
Apr 5, 2026
Merged

fix: update .gitignore files to include additional ignored patterns#1367
shunkakinoki merged 1 commit into
mainfrom
git-ignore

Conversation

@shunkakinoki

@shunkakinoki shunkakinoki commented Apr 5, 2026

Copy link
Copy Markdown
Owner

Summary by cubic

Expand repo and global .gitignore to ignore common tool caches (e.g., .claude, .cursor, .paperclip, .serena, .aider tags) and JJ’s .jj directory to prevent accidental commits. Also update Worktrunk config to exclude .paperclip in the copy-ignored step.

Written for commit c71157d. Summary will update on new commits.

Copilot AI review requested due to automatic review settings April 5, 2026 10:03
@mesa-dot-dev

mesa-dot-dev Bot commented Apr 5, 2026

Copy link
Copy Markdown

You do not have enough credits to review this pull request. Please purchase more credits to continue.

@shunkakinoki
shunkakinoki merged commit 6191f23 into main Apr 5, 2026
23 of 29 checks passed
@coderabbitai

coderabbitai Bot commented Apr 5, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 155ad806-13b9-4f2d-b6cd-67072b55e4fc

📥 Commits

Reviewing files that changed from the base of the PR and between b448045 and c71157d.

📒 Files selected for processing (3)
  • .gitignore
  • config/worktrunk/config.toml
  • home-manager/programs/git/.gitignore.global

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.


📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Updated ignore patterns in project and global Git configuration for tool-related directories and cache files.
    • Modified worktree configuration to exclude additional directories from synchronization.

Walkthrough

This pull request expands ignore patterns across multiple configuration files to exclude directories and caches from various AI development tools: .claude, .codex, .conductor, .crush, .cursor, .paperclip, .aider.tags.cache.v4, .serena, and .jj are added to .gitignore and Git's global ignore list, while .paperclip/ is also added to the worktree copy-step exclusion list.

Changes

Cohort / File(s) Summary
Gitignore Patterns
.gitignore, home-manager/programs/git/.gitignore.global
Added ignore patterns for AI tool directories (.claude, .codex, .conductor, .crush, .cursor, .paperclip, .aider.tags.cache.*, .serena) and JJ version control (.jj); .claude/settings.json remains unignored in root .gitignore.
Worktree Configuration
config/worktrunk/config.toml
Added .paperclip/ to the worktree copy-step exclusion list alongside existing cache and environment directories.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Poem

🐰 A rabbit's nest grows cluttered fast,
With .claude caches, .cursor past,
So .gitignore grows long and wide,
To sweep the .paperclip dust aside—
Now chaos sleeps, our burrow's clean! 🌿

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch git-ignore

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@shunkakinoki
shunkakinoki deleted the git-ignore branch April 5, 2026 10:03
@mesa-dot-dev

mesa-dot-dev Bot commented Apr 5, 2026

Copy link
Copy Markdown

Mesa Description

TL;DR

Updated .gitignore files to include additional patterns for ignored files.

What changed?

Modified various .gitignore files across the repository to expand the list of ignored patterns, improving repository cleanliness and preventing unwanted files from being committed. Specific file changes are not available in the provided summary.

Description generated by Mesa. Update settings

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the repository and global gitignore files to include various AI-related directories and the Jujutsu (.jj) directory, while also updating the worktrunk configuration to exclude .paperclip/. Feedback was provided regarding a bug where the modified .claude ignore pattern prevents the tracking of settings.json, as well as suggestions to resolve redundant patterns and avoid global ignores for directories containing shared configurations.

Comment thread .gitignore
# AI
.claude/*
.aider.tags.cache.v4
.claude

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

Changing .claude/* to .claude will cause Git to ignore the entire directory. When a directory is ignored, Git does not process negation patterns (like !) for files inside that directory. To keep settings.json tracked while ignoring other files in .claude, you must use the .claude/* pattern.

.claude/*

Comment thread .gitignore
@@ -1,7 +1,14 @@
# AI
.claude/*
.aider.tags.cache.v4

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The pattern .aider.tags.cache.v4 is redundant because .aider* is already defined on line 78 of this file. Additionally, using a version-specific pattern like v4 is brittle; if you wish to keep this entry at the top for organization, consider a version-agnostic pattern like .aider.tags.cache.* to match the style used in the global gitignore.

@@ -1,7 +1,11 @@
# AI
.aider.tags.cache.*/
.claude/

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Adding .claude/ to the global gitignore can be problematic for repositories that intend to track specific configuration files within that directory (such as settings.json in this repository). While repo-level negations can override global ignores, they require explicitly un-ignoring the directory first. It is generally safer to keep tool-specific ignores that might contain shared configuration at the repository level.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Updates ignore configuration to cover additional AI/editor tooling artifacts and improves worktree copy behavior by excluding more generated directories.

Changes:

  • Expand ignored patterns in the repo and global Git ignore configs (AI tool dirs/files + JJ .jj).
  • Update Worktrunk’s copy-ignored step to exclude .paperclip/.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 2 comments.

File Description
home-manager/programs/git/.gitignore.global Adds additional AI tool directories to the global ignore list.
config/worktrunk/config.toml Excludes .paperclip/ from the copy-ignored step.
.gitignore Expands repo-level ignores for AI tools and adds .jj.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -1,7 +1,11 @@
# AI
.aider.tags.cache.*/
.claude/

Copilot AI Apr 5, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With .claude/ ignored globally, repositories that want to keep a whitelisted file like .claude/settings.json must also unignore the directory itself (e.g., !.claude/) in the repo ignore file; otherwise the nested unignore may not work. Given this PR also introduces a repo-level whitelist for .claude/settings.json, consider changing the global ignore to only ignore contents (e.g., .claude/*) or document/standardize the required !.claude/ + !.claude/settings.json pair in repo .gitignore.

Suggested change
.claude/
.claude/*

Copilot uses AI. Check for mistakes.
@@ -1,7 +1,11 @@
# AI
.aider.tags.cache.*/

Copilot AI Apr 5, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The global ignore uses a directory-only wildcard pattern (.aider.tags.cache.*/), while the repo .gitignore ignores a specific versioned entry (.aider.tags.cache.v4). This split is easy to drift and may miss future versions or file-vs-directory differences. Consider standardizing on a single pattern that covers all versions consistently across both files (e.g., a wildcard that matches versioned cache names regardless of whether they’re files or directories).

Suggested change
.aider.tags.cache.*/
.aider.tags.cache.*

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants