chore: stop tracking Xcode workspace state and fix the gitignore anch… - #83
Merged
Conversation
…oring `.gitignore` ignored `.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata`, but a pattern containing a slash is anchored to the directory holding the `.gitignore`. The rule therefore only covered the copy at the repository root, and the identical file under `TestApp/` was committed. Anchor both with `**/`. `IDEWorkspaceChecks.plist` was tracked and matched by no rule at all. It holds a single `IDEDidComputeMac32BitWarning` flag, which is local Xcode state and has nothing to do with the package. Both files are only untracked here, not deleted; Xcode regenerates them. Also ignore `.claude/`, which was neither tracked nor ignored and so was picked up by `git add -A`.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
.gitignoreignored this path:A gitignore pattern containing a slash is anchored to the directory holding the
.gitignore, so the rule only ever covered the copy at the repository root. The identical file underTestApp/did not match and was committed. Confirmed withgit check-ignore:IDEWorkspaceChecks.plistwas tracked and matched by no rule at all. It holds a singleIDEDidComputeMac32BitWarningflag - local Xcode state with nothing to do with the package.Changes
**/so they apply at any depth..claude/, which was neither tracked nor ignored and so kept getting picked up bygit add -A.Tracked files go from 25 to 23. No source change.
Audit
While here, the repository was checked for anything else that should not have been committed:
.DS_Store/xcuserdata/.build/DerivedData/ certificates / key files, anywhere in historyghp_,github_pat_,sk-,AKIA, PRIVATE KEY,xox*) across all 798 objects including unreachable onestest@example.com, a test fixture/Users/...local absolute pathsrun-ci-command.sh, correctNothing here needs a history rewrite.