Created
August 9, 2017 04:03
-
-
Save evertrol/a5761f4db9b642c0610451fd88e81363 to your computer and use it in GitHub Desktop.
Git configuration
This file contains 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
*~ | |
*.pyc | |
.hg | |
.hgignore |
This file contains 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
[user] | |
name = Evert Rol | |
email = <redacted> | |
[core] | |
excludesfile = /home/evert/.git-core.excludesfile | |
pager = more | |
autocrlf = input | |
whitespace = trailing-space,space-before-tab | |
[alias] | |
lol = log --pretty=format:%h%x09%ad%x09%s --date=short --graph --decorate --color | |
unstage = reset HEAD | |
stat = status | |
cstat = status --untracked-files=no | |
alias = config --get-regexp '^alias\\.' | |
amend = commit --amend --no-edit | |
chmas = checkout master | |
[github] | |
user = evertrol | |
token = <redacted> | |
[color] | |
ui = true | |
[color "diff"] | |
meta = magenta bold | |
frag = cyan bold | |
old = red bold | |
new = yellow bold | |
whitespace = red reverse | |
[color "status"] | |
added = cyan bold | |
changed = yellow bold | |
untracked = red | |
[push] | |
default = simple | |
[credential] | |
helper = cache --timeout=3600 |
This file contains 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
# From http://techanic.net/2012/12/30/my_git_prompt_for_zsh.html | |
# Modify the colors and symbols in these variables as desired. | |
GIT_PROMPT_SYMBOL="%{$fg[blue]%}" | |
GIT_PROMPT_PREFIX="%{$fg[green]%}%{$reset_color%}" | |
GIT_PROMPT_SUFFIX="%{$fg[green]%}%{$reset_color%}" | |
GIT_PROMPT_AHEAD="%{$fg[red]%}ANUM%{$reset_color%}" | |
GIT_PROMPT_BEHIND="%{$fg[cyan]%}BNUM%{$reset_color%}" | |
GIT_PROMPT_MERGING="%{$fg_bold[magenta]%}⚡︎%{$reset_color%}" | |
GIT_PROMPT_UNTRACKED="%{$fg_bold[red]%}●%{$reset_color%}" | |
GIT_PROMPT_MODIFIED="%{$fg_bold[yellow]%}●%{$reset_color%}" | |
GIT_PROMPT_STAGED="%{$fg_bold[blue]%}●%{$reset_color%}" | |
# Show Git branch/tag, or name-rev if on detached head | |
parse_git_branch() { | |
(git symbolic-ref -q HEAD || git name-rev --name-only --no-undefined --always HEAD) 2> /dev/null | |
} | |
# Show different symbols as appropriate for various Git repository states | |
parse_git_state() { | |
# Compose this value via multiple conditional appends. | |
local GIT_STATE="" | |
local NUM_AHEAD="$(git log --oneline @{u}.. 2> /dev/null | wc -l | tr -d ' ')" | |
if [ "$NUM_AHEAD" -gt 0 ]; then | |
GIT_STATE=$GIT_STATE${GIT_PROMPT_AHEAD//NUM/$NUM_AHEAD} | |
fi | |
local NUM_BEHIND="$(git log --oneline ..@{u} 2> /dev/null | wc -l | tr -d ' ')" | |
if [ "$NUM_BEHIND" -gt 0 ]; then | |
GIT_STATE=$GIT_STATE${GIT_PROMPT_BEHIND//NUM/$NUM_BEHIND} | |
fi | |
local GIT_DIR="$(git rev-parse --git-dir 2> /dev/null)" | |
if [ -n $GIT_DIR ] && test -r $GIT_DIR/MERGE_HEAD; then | |
GIT_STATE=$GIT_STATE$GIT_PROMPT_MERGING | |
fi | |
if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then | |
GIT_STATE=$GIT_STATE$GIT_PROMPT_UNTRACKED | |
fi | |
if ! git diff --quiet 2> /dev/null; then | |
GIT_STATE=$GIT_STATE$GIT_PROMPT_MODIFIED | |
fi | |
if ! git diff --cached --quiet 2> /dev/null; then | |
GIT_STATE=$GIT_STATE$GIT_PROMPT_STAGED | |
fi | |
if [[ -n $GIT_STATE ]]; then | |
echo "$GIT_PROMPT_PREFIX$GIT_STATE$GIT_PROMPT_SUFFIX" | |
fi | |
} | |
# If inside a Git repository, print its branch and state | |
git_prompt_string() { | |
local git_where="$(parse_git_branch)" | |
[ -n "$git_where" ] && echo "($GIT_PROMPT_SYMBOL$(parse_git_state)$GIT_PROMPT_PREFIX%{$fg[yellow]%}${git_where#(refs/heads/|tags/)}$GIT_PROMPT_SUFFIX) " | |
} | |
# Set the right-hand prompt | |
#RPS1='$(git_prompt_string)' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment