dotstate
Modern dotfile manager with Git integration
TLDR
SYNOPSIS
dotstate [command] [options] [arguments]
DESCRIPTION
dotstate is a modern dotfile manager that uses Git for version control while providing a simplified interface for common dotfile operations. It helps users manage configuration files across multiple machines by tracking them in a Git repository.
The tool provides commands for initializing a dotfiles repo, adding files to tracking, synchronizing configurations between systems, and handling platform-specific files. It maintains a clean separation between the actual dotfiles in the home directory and the repository.
PARAMETERS
-c, --config FILE
Configuration file path-d, --dotfiles DIR
Dotfiles repository directory-v, --verbose
Enable verbose output--dry-run
Show what would be done without making changes-h, --help
Display help and exit--version
Display version and exit
COMMANDS
init [DIRECTORY]
Initialize a new dotstate repositoryadd FILE
Add a file to dotstate trackingremove FILE
Remove a file from trackingsync
Synchronize dotfiles to current systemstatus
Show repository statuscommit [-m MESSAGE]
Commit changes to repositorypush
Push changes to remotepull
Pull changes from remotelist
List all tracked files
CAVEATS
Requires Git to be installed and configured. May overwrite existing files during sync - backups recommended. Platform-specific configurations need manual handling. Symbolic link handling varies by operating system.
HISTORY
dotstate was created as a modern alternative to traditional dotfile managers, focusing on simplicity and Git integration. It aims to provide the power of version control without the complexity of manual Git operations.

