Manage dotfiles by symlinking them from a Git repo into $HOME.
config/— subfolders are symlinked into$HOME/.config/dotfiles/— files are symlinked into$HOME/(prefixed with.)
make init # create symlinks
make dry-run # preview what init would do
make clean # remove managed symlinks and restore backups
make clean-dry-run # preview what clean would do- Idempotent: re-running
make initskips targets that are already correctly linked. - Safe backups: existing files are renamed with a timestamped
.baksuffix (e.g..gitconfig.20260303141500.bak), so repeated runs never overwrite previous backups. - Reversible:
make cleanremoves managed symlinks and restores the latest backup if one exists. - Dry-run: both
initandcleansupport--dry-runto preview actions without touching the filesystem.
- Clone this repo
- Add config folders to
config/and dotfiles todotfiles/ - Run
make dry-runto preview, thenmake initto apply