Bash aliases are amazing, just set them up.
Bash aliases are shortcuts. They reduce the key strokes, and increase efficiency. You just
type a short, easy to remember shortcut, and bash will execute the full command. Why type
out git status
when you could type gs
? Whey type out git checkout origin master
when you could just type gcm
?
First, identify which version of shell you're using and where 's configuration
file is. Usually, on a mac, it's in a file at ~/.bash_profile
. I use
zsh, so mine is at ~/.zshrc
. An easy way to test is to add a sample alias,
and try executing it after refreshing the shell or sourcing your config file. e.g. source ~/.zshrc
. I keep my aliases in a file at ~/.aliases
and then add
source ~/.aliases
source ~/.aliases
to my ~/.zshrc
. Once you identify which file to edit, all you need to do is add something like the following:
alias gs='git status'
In the above example, `gs` is the text you will type, and the text in the quotes is the command that will be executed.
Here are the aliases that I use
# general
alias ll='ls -la'
alias zshrc='vim ~/.zshrc'
alias hosts='sudo vim /etc/hosts'
# directories
alias dev='cd ~/Development'
alias projects='cd ~/Development/projects'
# git
alias mylog='git log --author="Michael Bonner" --pretty=format:"%aD : %s"'
alias gs='git status'
alias gb='git branch'
alias gpull='git pull'
alias gpo='git pull origin'
alias gp='git pull'
alias gpush='git push'
alias gf='git fetch'
alias gl="git log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an%C(reset)' --all"
alias gl2="git log --graph --abbrev-commit --decorate --date=relative --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all"
alias gcm='git checkout main'
alias gcma='git checkout master'
alias gcd='git checkout development'
alias gcs='git checkout staging'
alias gpma='git pull origin master'
alias gpd='git pull origin development'
alias gps='git pull origin staging'
alias ga='git add .'
alias gc='git commit -m '
alias gac='git commit -am '
alias ggs='find . -type d -name '.git' -maxdepth 3 | while read dir ; do sh -c "cd $dir/../ && echo -e "GIT STATUS IN ${dir//.git/{" && git status -s" ; done'
alias ggpull='find . -type d -name '.git' -maxdepth 3 | while read dir ; do sh -c "cd $dir/../ && echo -e "GIT PULL IN ${dir//.git/{" && git pull" ; done'
alias gc--.='git checkout -- .'
alias gch='git checkout'
alias gclean='git reset --hard;git clean -df;'
alias ghash='git rev-parse HEAD | pbcopy'
alias gt='git trim'
alias ggt='find . -type d -name '.git' -maxdepth 3 | while read dir ; do sh -c "cd $dir/../ && echo -e "GIT TRIM IN ${dir//.git/{" && git trim" ; done'
# laravel
alias sup='sail up'
alias sdo='sail down'
alias pa='sail artisan'
alias mfs='sail artisan queue:clear; sail artisan migrate:fresh --seed'
alias cda='composer dump-autoload'
alias sail='./vendor/bin/sail'
alias sa='sail artisan'
alias sc='sail composer'
# npm
alias nr='npm run'
alias nrs='npm run start'
alias nrss='npm run start-secure'
alias nrd='npm run dev'
alias nrt='npm run test'
alias nrw='npm run watch'
alias nrp='npm run prod'
alias nrb='npm run build'
alias nrl='npm run lint'
alias nrc='npm run codegen'
alias nrg='npm run generate'
alias npmout='find . -type d -name .git -maxdepth 3 | while read dir ; do sh -c "cd $dir/../ && echo -e "NPM STATUS IN ${dir//.git/}" && npm out" ; done'
alias npmup='find . -type d -name '.git' -maxdepth 2 | while read dir ; do sh -c "cd $dir/ && echo -e "NPM UPDATE IN ${dir//.git/}" && npm up" ; done'
alias y='yarn'
alias mjml='./node_modules/.bin/mjml'
alias nd='netlify dev'
alias npm='~/.npm-global/bin/npm'
# bun
alias br='bun run'
alias brs='bun run start'
alias brss='bun run start-secure'
alias brd='bun run dev'
alias brt='bun run test'
alias brw='bun run watch'
alias brp='bun run prod'
alias brb='bun run build'
alias brl='bun run lint'
alias brc='bun run codegen'
alias brg='bun run generate'
# docker
alias dcu='docker compose up'
alias dcd='docker compose down'
# deployments
alias vl='vercel ls'
# misc
alias c='open . -a "/Applications/Visual Studio Code.app"
alias st='open . -a /Applications/Sourcetree.app'
alias vim='lvim'
Published:
Updated: