Skip to content

v1.4.0

Compare
Choose a tag to compare
@andrewmcwatters andrewmcwatters released this 12 Aug 00:05
· 39 commits to main since this release

Added

  • Multi-target file tracking: Same file can now be tracked from different repositories or to different target directories without conflicts
  • Enhanced conflict detection: Intelligent conflict detection only prevents duplicates when repository, file path, and target directory are all identical
  • Remove command: New git fetch-file remove <path> [<target_dir>] command to remove tracked files from the manifest
  • Force flag for add command: Added --force flag to add command for intentionally overwriting existing entries
  • Repository disambiguation: --repository flag for remove command to disambiguate entries from different repositories

Changed

  • BREAKING: Manifest format simplification: All manifest sections now use unified format [file "path" from "repository_url"] for clarity and consistency
  • Eliminated redundant repository keys: Repository information is now stored only in section names, eliminating duplicate repository keys in manifest entries
  • Simplified codebase: Removed unnecessary helper functions, making the code more maintainable
  • Git-style error messages: Conflict errors now use concise, git-like format: fatal: 'file' already tracked from <repo> with helpful hints
  • Backward compatibility: Old manifest formats are still supported and automatically migrated

Fixed

  • Issue #5: Cannot add same filename from two different repos: Resolved conflict detection that incorrectly prevented tracking same filename from different repositories or to different target directories

Improved

  • Conflict resolution guidance: Error messages now provide clear options: use --force to overwrite, or specify different target directory
  • Status output clarity: Status command shows multiple entries when same file is tracked to different locations
  • Documentation coverage: Comprehensive README.md updates with conflict handling examples and new command documentation

Full Changelog: v1.3.0...v1.4.0