A lightweight, dependency-free setup for development environments that prioritizes simplicity and usability.
- Minimal Prompt with GIT info: Shows current branch, staged (+) and unstaged (*) changes
- Tab completion with menu selection
- History Search: Type a the first characters of a given command and use ↑/↓ to search history
- Directory Navigation: Convenient aliases for listing directories (
l
,la
) & Shortcuts like...
for faster directory traversal
- Aliases for common commands:
ci
(commit),co
(checkout),st
(clean status view - shows your branch and changes without the clutter) - Aliases for Listings: Git has inconsistent ways to list things, these aliases provide a consistent 'noun' interface:
git branches
,git tags
,git stashes
andgit remotes
. - Better Logging:
git lol
(compact log view) andgit graph
(see how your branches connect). - Branch Stacking: git stack (lists all branches in your current stack) and git push-stack (pushes all stacked branches with one command) for managing chains of dependent feature branches. Useful when breaking large features into smaller, reviewable PRs that build upon each other.
Quality of Life Improvements:
- Global gitignore configuration
- Cleaner diffs with to the histogram algorithm
- Branches track their remotes automatically when you push
- Conflict resolution memory: Git remembers how you've resolved conflicts and automatically applies the same fixes in future rebases/merges
.hushlogin
: Skips the "Last login" message and other system information displayed at terminal startup. Note that this file is intentionally empty — its presence alone activates this functionality..editorconfig
: 120 columns of text by default (because we're not in the 80s anymore)
Warning: If you want to give these dotfiles a try, you should first fork this repository, review & update the config files. Don’t blindly use my settings unless you know what that entails. Use at your own risk!
You can clone the repository wherever you want. (I like to keep it in ~/.dotfiles
). The bootstrapper script will pull in the latest version and copy the files to your home folder.
git clone [email protected]:cassiozen/dotfiles.git ~/.dotfiles
cd ~/.dotfiles && source bootstrap.sh
To update, cd
into .dotfiles
then:
source bootstrap.sh
You can add custom settings on ~/.gitconfig.local
and ~/.zshrc.local
This makes it easy to keep your core configuration in version control while maintaining machine-specific settings separately.