Last active
September 2, 2016 22:00
-
-
Save mofas/2848184adb0ac1ac561d to your computer and use it in GitHub Desktop.
.bash
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Easier navigation: .., ..., ~ and - | |
alias ..="cd .." | |
alias ...="cd ../.." | |
alias ....="cd ../../.." | |
alias .....="cd ../../../.." | |
# Detect which `ls` flavor is in use | |
if ls --color > /dev/null 2>&1; then # GNU `ls` | |
colorflag="--color" | |
else # OS X `ls` | |
colorflag="-G" | |
fi | |
# List all files colorized in long format | |
alias l="ls -l ${colorflag}" | |
# List all files colorized in long format, including dot files | |
alias la="ls -la ${colorflag}" | |
# Always use color output for `ls` | |
if [[ "$OSTYPE" =~ ^darwin ]]; then | |
alias ls="command ls -G" | |
else | |
alias ls="command ls --color" | |
export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:' | |
fi | |
# Shortcuts | |
alias g="git" | |
alias v="vim" | |
# GIT STUFF | |
alias gadd="git add ." | |
alias gcit="git commit -m $1" | |
alias gst="git status" | |
alias gpull="git pull --all" | |
alias gb="git branch $1" | |
alias gch="git checkout $1" | |
alias gpush="git push origin master" | |
# Undo a `git push` | |
alias undopush="git push -f origin HEAD^:master" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export CLICOLOR=1 | |
export TERM=xterm-256color | |
export EDITOR="vim" | |
source ~/git-completion.bash | |
. ./z.sh | |
for file in ~/.{bash_prompt,aliases}; do | |
[ -r "$file" ] && source "$file" | |
done |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# @gf3’s Sexy Bash Prompt, inspired by “Extravagant Zsh Prompt” | |
# Shamelessly copied from https://github.com/gf3/dotfiles | |
if [ -f `brew --prefix`/etc/bash_completion ]; then | |
. `brew --prefix`/etc/bash_completion | |
fi | |
if [[ $COLORTERM = gnome-* && $TERM = xterm ]] && infocmp gnome-256color >/dev/null 2>&1; then | |
export TERM=gnome-256color | |
elif infocmp xterm-256color >/dev/null 2>&1; then | |
export TERM=xterm-256color | |
fi | |
prompt_git() { | |
local s=''; | |
local branchName=''; | |
# Check if the current directory is in a Git repository. | |
if [ $(git rev-parse --is-inside-work-tree &>/dev/null; echo "${?}") == '0' ]; then | |
# check if the current directory is in .git before running git checks | |
if [ "$(git rev-parse --is-inside-git-dir 2> /dev/null)" == 'false' ]; then | |
# Ensure the index is up to date. | |
git update-index --really-refresh -q &>/dev/null; | |
# Check for uncommitted changes in the index. | |
if ! $(git diff --quiet --ignore-submodules --cached); then | |
s+='+'; | |
fi; | |
# Check for unstaged changes. | |
if ! $(git diff-files --quiet --ignore-submodules --); then | |
s+='!'; | |
fi; | |
# Check for untracked files. | |
if [ -n "$(git ls-files --others --exclude-standard)" ]; then | |
s+='?'; | |
fi; | |
# Check for stashed files. | |
if $(git rev-parse --verify refs/stash &>/dev/null); then | |
s+='$'; | |
fi; | |
fi; | |
# Get the short symbolic ref. | |
# If HEAD isn’t a symbolic ref, get the short SHA for the latest commit | |
# Otherwise, just give up. | |
branchName="$(git symbolic-ref --quiet --short HEAD 2> /dev/null || \ | |
git rev-parse --short HEAD 2> /dev/null || \ | |
echo '(unknown)')"; | |
[ -n "${s}" ] && s=" [${s}]"; | |
echo -e "${1}${branchName}${blue}${s}"; | |
else | |
return; | |
fi; | |
} | |
if tput setaf 1 &> /dev/null; then | |
tput sgr0; # reset colors | |
bold=$(tput bold); | |
reset=$(tput sgr0); | |
# Solarized colors, taken from http://git.io/solarized-colors. | |
black=$(tput setaf 0); | |
blue=$(tput setaf 33); | |
cyan=$(tput setaf 37); | |
green=$(tput setaf 64); | |
orange=$(tput setaf 166); | |
purple=$(tput setaf 125); | |
red=$(tput setaf 124); | |
violet=$(tput setaf 61); | |
white=$(tput setaf 15); | |
yellow=$(tput setaf 136); | |
else | |
bold=''; | |
reset="\e[0m"; | |
black="\e[1;30m"; | |
blue="\e[1;34m"; | |
cyan="\e[1;36m"; | |
green="\e[1;32m"; | |
orange="\e[1;33m"; | |
purple="\e[1;35m"; | |
red="\e[1;31m"; | |
violet="\e[1;35m"; | |
white="\e[1;37m"; | |
yellow="\e[1;33m"; | |
fi; | |
# Highlight the user name when logged in as root. | |
if [[ "${USER}" == "root" ]]; then | |
userStyle="${red}"; | |
else | |
userStyle="${orange}"; | |
fi; | |
# Highlight the hostname when connected via SSH. | |
if [[ "${SSH_TTY}" ]]; then | |
hostStyle="${bold}${red}"; | |
else | |
hostStyle="${yellow}"; | |
fi; | |
# Set the terminal title to the current working directory. | |
PS1="\[\033]0;\w\007\]"; | |
PS1+="\[${bold}\]\n"; # newline | |
PS1+="\[${userStyle}\]\u"; # username | |
PS1+="\[${white}\] at "; | |
PS1+="\[${hostStyle}\]\h"; # host | |
PS1+="\[${white}\] in "; | |
PS1+="\[${green}\]\w"; # working directory | |
PS1+="\$(prompt_git \"${white} on ${violet}\")"; # Git repository details | |
PS1+="\n"; | |
PS1+="\[${white}\]\$ \[${reset}\]"; # `$` (and reset color) | |
export PS1; | |
PS2="\[${yellow}\]→ \[${reset}\]"; | |
export PS2; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ -n "$PS1" ] && source ~/.bash_profile; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[alias] | |
c = commit -am | |
up = pull | |
p = push | |
s = status -s | |
df = diff --color --color-words --abbrev | |
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit -- | |
[color] | |
ui = always | |
[core] | |
excludesfile = ~/.gitignore | |
attributesfile = ~/.gitattributes | |
[color "branch"] | |
current = yellow reverse | |
local = yellow | |
remote = green | |
[color "diff"] | |
meta = yellow bold | |
frag = magenta bold | |
old = red bold | |
new = green bold | |
[color "status"] | |
added = yellow | |
changed = green | |
untracked = cyan | |
[merge] | |
log = true |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
z.sh
https://github.com/rupa/z/blob/master/z.sh
git-completion.bash
https://github.com/git/git/blob/master/contrib/completion/git-completion.bash