Skip to content

Fix tracked-file protection and unresolved conflict reporting - #25

Merged
satococoa merged 3 commits into
mainfrom
codex/maintenance-safety-20261102
Nov 2, 2026
Merged

satococoa merged 3 commits into
mainfrom
codex/maintenance-safety-20261102

Conversation

@satococoa

Copy link
Copy Markdown
Owner

A file ignored in the source can be tracked in the target's separate index. Exclude target-tracked paths before planning or copying so --force cannot overwrite them and a missing working-tree file stays absent. This restores the documented promise that tracked files are never touched.

Return exit code 3 whenever conflicts remain, including a destination directory under --force, and report that action as CONFLICT instead of COPY. Successfully forced regular-file copies retain their existing behavior. The two fixes are separate commits.

Also document go install, the required Go version, PATH setup, and the current dev version display for source installs. Fixes #19.

Validation: make ci (format, vet, lint, tests, race) and build passed on Go 1.26.0 with urfave/cli v3.9.0. Added 24 tracked-file cases covering either/both indexes, existing/deleted targets, force and dry-run, plus 8 directory-conflict cases covering force, dry-run, JSON and human output. Disposable-repository binary smoke verified ignored-only copying, unchanged dry-runs, tracked preservation, conflicts, and exit codes 0–4.

@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Caution

Review failed

The pull request is closed.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

@satococoa
satococoa marked this pull request as ready for review November 2, 2026 13:27
@satococoa
satococoa merged commit bf33268 into main Nov 2, 2026
5 checks passed
@satococoa
satococoa deleted the codex/maintenance-safety-20261102 branch November 2, 2026 13:28
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.

Add go install to readme for easy installation

1 participant