Skip to content

Instantly share code, notes, and snippets.

@jwoglom
Created January 6, 2026 04:38
Show Gist options
  • Select an option

  • Save jwoglom/0a6959efc2be6b87c82de7e82e5e6cf7 to your computer and use it in GitHub Desktop.

Select an option

Save jwoglom/0a6959efc2be6b87c82de7e82e5e6cf7 to your computer and use it in GitHub Desktop.
[alias]
st = status
stu = status -uno
ci = commit
br = branch -v
clpatch = !bash -lc 'clpatch $1' -
co = checkout
cp = cherry-pick
pr = pull --rebase
prst = !git pr --autostash
prup = !git prst && git up
df = diff
dft = diff --stat
ds = diff --staged
dst = diff --staged --stat
lg = log -p --format=fuller
lgt = log --stat --format=fuller
cp = cherry-pick
amend = commit -a --amend -C HEAD
lo = log --pretty=oneline --abbrev-commit
lol = log --graph --decorate --pretty=oneline --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all --date=local
lst = log --stat
ls = ls-files
unstage = reset HEAD
out = !git log origin/master..$(git rev-parse --abbrev-ref HEAD)
in = !git fetch && git log $(git rev-parse --abbrev-ref HEAD)..origin/master
# Show files ignored by git:
ign = ls-files -o -i --exclude-standard
sh = show
sht = show --stat
rbi = rebase -i
rbe = rebase --edit-todo
rbc = rebase --continue
rbec = !git rbe && git rbc
res = restore
rest = restore --staged
# br all
bra = br --sort=-committerdate
# br recently used
bru = !git bra --color=always|head -n 10
# git ren <new_branchname>
ren = branch -m
ignore = update-index --assume-unchanged
unignore = update-index --no-assume-unchanged
ignored = !git ls-files -v | grep "^[[:lower:]]"
stashgrep = "!f() { for i in `git stash list --format=\"%gd\"` ; \
do git stash show -p $i | grep -H --label=\"$i\" \"$@\" ; done ; }; f"
nbupstream = "!f() { if [ -z \"$1\" ]; then echo \"Need a branch name\"; else git fetch upstream && git checkout -b \"$1\" upstream/master; fi }; f"
nbfrom = "!f() { if [ -z \"$1\" ]; then echo \"Need a branch name\"; else if [ -z \"$2\" ]; then echo \"Need an origin branch name\"; else git fetch origin && git checkout -b \"$1\" origin/\"$2\"; fi; fi }; f"
# Yext default aliases
#new-branch = "!f() { if [ -z \"$1\" ]; then echo \"Need a branch name\"; else git fetch origin && git checkout -b \"$1\" origin/master; fi }; f"
new-branch = '!f() { if [ -z "$1" ]; then echo "Need a branch name"; else git fetch origin; if git show-ref --verify --quiet refs/remotes/origin/main; then TARGET_BRANCH="main"; else TARGET_BRANCH="master"; fi; git checkout -b "$1" "origin/$TARGET_BRANCH"; fi }; f'
nb = !git new-branch
rb = !git rebase
com = !git checkout master || git checkout main
[color]
branch = auto
diff = auto
interactive = auto
status = auto
[core]
whitespace=fix,-indent-with-non-tab,trailing-space,cr-at-eol
[push]
default = simple
[diff]
tool = meld
noprefix = true
#[merge]
#tool = meld
[credential]
helper = ""
[init]
defaultBranch = main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment