Personal dotfiles managed with yadm.
brew install yadm
yadm clone git@github.com:1334/dotfiles.git- Shell: zsh config
- Git: gitconfig, global gitignore
- Neovim: full config (kickstart.nvim based)
- Editors: vim, ideavim, vscode settings
- Tools: asdf/mise, editorconfig, prettier, karabiner
- Scripts: ~/bin utilities
yadm is a thin wrapper around git — all git commands work as expected, just replace git with yadm:
yadm status # check what's changed
yadm add ~/.config/nvim/init.lua # stage a file
yadm commit -m "update nvim config"
yadm pushyadm list # list all tracked files
yadm diff # see unstaged changes
yadm add -u && yadm commit # stage all modified tracked files and commit
yadm stash # stash changes (works like git stash)yadm add -f ~/.some-new-config # -f required (global gitignore is set to *)
yadm commit -m "add some-new-config"
yadm pushThe -f flag is needed because yadm is configured to ignore all untracked files by default (via ~/.config/yadm/gitignore), keeping yadm status clean.
- yadm uses
$HOMEas the worktree and keeps its git repo at~/.local/share/yadm/repo.git - Files live at their real paths — no symlinks, no renaming
- A sparse-checkout excludes
README.mdfrom~/so it only appears on GitHub ~/.config/yadm/gitignoreis set to*so only explicitly added files show inyadm status