Commit graph

3 commits

Author SHA1 Message Date
2e0952f9fb
feat: add colored output with distinct symbols using the colored crate
Add a centralized ui module with Arc's visual identity: colored commit
IDs (magenta), bookmarks (cyan), tags (yellow), status symbols, and
diff highlighting. Update all command output and tests accordingly.
2026-02-09 03:51:59 +00:00
0e9c810a41
feat: implement config system with set/get/show/unset and alias expansion
- config set/get/show/unset commands with dotted key paths (user.name, default.bookmark, aliases.c, etc.)
- local config overrides global config per rule 21
- alias expansion at CLI level before dispatch per rule 23
- InvalidConfigKey error variant
- 28 tests covering all config operations, global/local resolution, and alias expansion
2026-02-08 02:34:48 +00:00
dca6a9ae76
feat: implement phase 2 core repo structure
- Add Repository struct with init/open/discover methods
- Create .arc/ directory layout: commits/, bookmarks/, tags/, stashes/, HEAD, config.yml
- Define data model types: Commit, Delta, FileChange, Head, RefTarget with serde derives
- Implement YAML config with local/global resolution and EffectiveConfig merging
- Implement .arcignore/.ignore file parsing
- Add error module with ArcError type
- Wire arc init command to create real repository structure
- Add serde, serde_yaml, rmp-serde dependencies; tempfile dev-dependency
- Add 16 new integration tests across init, config, ignore, and model test files
2026-02-06 18:06:13 +00:00