110 lines
No EOL
3.6 KiB
Text
110 lines
No EOL
3.6 KiB
Text
[alias]
|
|
a=add
|
|
aa=add .
|
|
aliases=! f(){ TOP=$(expr $(grep -n "^\\\\[alias" ~/.gitconfig | sed -e 's|:.*||') + 1) && for LINE_NUMBER in $(grep -n "^\\\\[" ~/.gitconfig | sed -e 's|:.*||'); do [ $TOP -lt $LINE_NUMBER ] && BOTTOM=$(expr $LINE_NUMBER - 2 ) && break; done; sed -n "${TOP},${BOTTOM}p" ~/.gitconfig; }; f | sed -e 's|^ ||'
|
|
ap=add -p
|
|
b=! git for-each-ref --sort='-authordate' --format='%(authordate)%09%(objectname:short)%09%(refname)' refs/heads | sed -e 's|refs/heads/||'
|
|
bD=branch -D
|
|
ba=branch -a
|
|
bc=branch -c
|
|
bd=branch -d
|
|
br=branch -r
|
|
c=! git commit --verbose; git push
|
|
ca=! git c --amend
|
|
cf=! git commit --verbose; git push --force
|
|
ch=switch -C
|
|
change=switch -C
|
|
cl=clone
|
|
cm=commit -m
|
|
co=checkout
|
|
cp=cherry-pick ; usually abusive; sometimes necessary
|
|
create=! git bc
|
|
d=diff
|
|
dc=diff --cached
|
|
ds=diff --stat
|
|
expire=! git fsck --unreachable --dangling --no-reflogs; git reflog expire --expire=now --all; git gc --prune=now
|
|
f=fetch
|
|
fe=fetch
|
|
filelog=log --patch
|
|
find=! git ls-files | grep -i
|
|
fl=log --patch
|
|
fp=fetch --prune ; removes branches not in upstream
|
|
gr=grep -Ii
|
|
grep=grep -Ii
|
|
greproot=! git grr
|
|
grr=! f() { ROOT=$(git rev-parse --show-toplevel) && cd $ROOT && git grep --full-name -In $1 | xargs -I{} echo $ROOT/{}; }; f
|
|
invert=revert
|
|
l=log --oneline --graph --decorate --parents
|
|
lasttag=describe --tags --abbrev=0
|
|
ll=log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
|
|
lref=log --oneline --graph --decorate --parents --reflog
|
|
ls=log --pretty=format:"%C(yellow)%h\\ %ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short
|
|
lt=describe --tags --abbrev=0
|
|
mailmap=! f(){ printf \"$(git config user.name) <$(git config user.email)> <${1}>\" > mailmap; git filter-repo --force --mailmap mailmap; }; f
|
|
one=log -1 ; no input displays HEAD
|
|
pd=push -d
|
|
pf=push --force
|
|
pl=pull
|
|
pp=pull --prune ; removes branches not in upstream
|
|
pr=pull --rebase ; rebases commits onto upstream
|
|
ps=push
|
|
pt=! f(){ git push $1 tag $2; }; f
|
|
r=rebase
|
|
ra=rebase --skip
|
|
rc=rebase --continue
|
|
re=restore
|
|
ref=reflog
|
|
ri=rebase --interactive
|
|
rm=rm -r
|
|
rmf=! git rm --force
|
|
rq=rebase --quit
|
|
rs=rebase --abort
|
|
sh=show
|
|
st=status
|
|
sw=switch ; new checkout - only switching branch w/o restoring worktree
|
|
sync=! git fe upstream; git rebase upstream/main; git push
|
|
t=tag
|
|
td=tag --delete
|
|
un=restore --staged --worktree
|
|
uncommit=switch -C
|
|
undo=restore --staged --worktree
|
|
undo-specific=! f(){ git restore --source=\"$1\" $2; }; f
|
|
undo-stage=restore
|
|
undo-unstaged=restore
|
|
undo-work=restore --staged --worktree
|
|
undo-wt=restore --staged --worktree
|
|
unstage=restore --staged
|
|
wa=! f(){ git worktree add ../$1 $1; }; f
|
|
wc=! f(){ PROJ=$(printf $1 | sed -e 's|.*/||' | sed -e 's|.git||'); mkdir $PROJ; cd $PROJ; if git ls-remote $1 | grep -q "main"; then BRANCH="main"; elif git ls-remote $1 | grep -q "master"; then BRANCH="master"; elif git ls-remote $1 | grep -q "trunk"; then BRANCH="trunk"; fi; git clone $1 $BRANCH; }; f
|
|
wcreate=! git wc
|
|
wmv=worktree move
|
|
wnew=! f(){ git worktree add ../$1; cd ../$1; git push --set-upstream origin $1; }; f
|
|
wr=worktree remove
|
|
wrm=! git wr
|
|
wsc=! f(){ PROJ=$(printf $1 | sed -e 's|.*/||' | sed -e 's|.git||'); mkdir $PROJ; cd $PROJ; if git ls-remote $1 | grep -q "main"; then BRANCH="main"; elif git ls-remote $1 | grep -q "master"; then BRANCH="master"; elif git ls-remote $1 | grep -q "trunk"; then BRANCH="trunk"; fi; git clone --depth=1 --single-branch $1 $BRANCH; }; f
|
|
wshallow=! git wsc
|
|
|
|
[branch]
|
|
autosetuprebase=always
|
|
|
|
[color]
|
|
branch=auto
|
|
diff=auto
|
|
status=auto
|
|
|
|
[commit]
|
|
gpgsign=true
|
|
|
|
[gpg]
|
|
format=ssh
|
|
|
|
[user]
|
|
email=amad@atl.tools
|
|
name=Artur Manuel
|
|
signingKey=~/.ssh/id_ed25519.pub
|
|
|
|
[init]
|
|
defaultBranch = "main"
|
|
|
|
[credential]
|
|
helper = "git-credential-libsecret" |