#!/bin/sh # Aliases used in all kinds of shells # Manage the bare `git` repository in ~/ holding the dotfiles alias dotfiles='git --git-dir=$XDG_DATA_HOME/dotfiles --work-tree=$HOME' # Integrate `git` if _command_exists git; then # Check if a "main" branch exists in place of a "master" branch git_main_branch() { if [ -n "$(git branch --list main)" ]; then echo "main" else echo "master" fi } alias g='git' alias ga='git add' alias gap='git add --patch' alias gbr='git branch' alias gbra='git branch --all' alias gbrd='git branch --delete' alias gbrdd='git branch --delete --force' alias gbrm='git branch --move' alias gci='git commit' alias gcim='git commit --message' alias gcl='git clone' alias gco='git checkout' alias gcob='git checkout -b' alias gcod='git checkout develop' alias gcom='git checkout $(git_main_branch)' alias gcp='git cherry-pick' alias gdf='git diff-minimal' alias gdlc='git diff-last-commit' alias gds='git diff-staged' alias gfe='git fetch' alias ghi='git history' alias ghia='git history --all' alias glc='git last-commit' alias glg='git log' alias glga='git log --all' alias gme='git merge' alias gmea='git merge --abort' alias gmec='git merge --continue' alias gmeff='git merge --ff-only' alias gmenoff='git merge --no-ff' alias gol='git oneline' alias gola='git oneline --all' alias gpl='git pull' alias gplrb='git pull --rebase' alias gps='git push' alias gpsf='git push --force' alias grb='git rebase --committer-date-is-author-date' alias grba='git rebase --abort' alias grbc='git rebase --continue' alias grbi='git rebase --interactive' alias grbq='git rebase --quit' alias grbs='git rebase --skip' alias grepc='git grep-code' alias grepl='git grep-log' alias grept='git grep-text' alias grl='git reflog' alias grm='git rm' alias grs='git reset' alias grv='git revert' alias gs='git status' alias gss='git status --short' alias gsh='git show' alias gst='git stash' alias gsta='git stash push --include-untracked' alias gstam='git stash push --include-untracked --message' alias gstapp='git stash apply' alias gstl='git stash list' alias gstp='git stash pop' alias gstsh='git stash show' alias gsu='git summary' alias gsua='git summary --all' fi