What's Changed
Added
migratecommand for migrating repositories to new encryption methodspermissions listcommand to list tracked file permissionskey-filesupport in setup command for git-crypt key management- Git trace detection for worktree identification after clone and init operations
- Comprehensive test suite with BATS (Bash Automated Testing System)
Changed
- BREAKING: Migrated from OpenSSL-based encryption to git-crypt for file encryption
- Disabled permissions tracking by default
- Renamed
worktreecommand toinfocommand - Updated encryption setup to use git-crypt instead of custom OpenSSL implementation
- Improved git-crypt integration with automatic repository configuration
Removed
- OpenSSL-based encryption system (replaced by git-crypt)
- Passphrase management commands (no longer needed with git-crypt)
- Custom merge driver for encrypted files (handled by git-crypt)
trk.permissionsconfiguration setting--pruneoption to avoid destructive operations--forceflag removed everywhere to avoid destructive operations
Fixed
- Mark command now fails appropriately when encryption is not configured
- Repository validation now checks for shared repositories only under specific conditions
- File existence validation removed from mark command for better workflow support
- Pre-commit hook now properly uses git diff and calls permissions refresh
- Permissions changes detection improved with better filtering
- GIT_DIR and GIT_ROOT environment variable handling
- Init command handling of unexpected git options after directory argument
- Global init now creates missing parent directories correctly
Full Changelog: v0.3.0...v0.4.0