8.2 KiB
8.2 KiB
Git
Git
Basic configuration
# -*- indent-tabs-mode: t; -*-
[user]
email = lucien@phundrak.com
name = Lucien Cartier-Tilet
signingkey = BD7789E705CB8DCA
[core]
editor = emacsclient -c -a emacs
whitespace = fix,-indent-with-non-tab,trailing-space
excludesfile = /home/phundrak/.gitignore_global
[pull]
rebase = true
[init]
defaultBranch = main
[color]
ui = auto
[web]
browser = firefox
Aliases
abbreviation | equivalent |
---|---|
a |
add --all |
aca |
!git add --all && git commit --amend |
acan |
!git add --all && git commit --amend --no-edit |
abbreviation | equivalent |
---|---|
b |
branch |
bd |
branch -d |
bdd |
branch -D |
abbreviation | equivalent |
---|---|
c |
commit -S |
ca |
commit -Sa |
can |
commit -Sa --no-edit |
cm |
commit -Sm |
cam |
commit -Sam |
abbreviation | equivalent |
---|---|
co |
checkout |
cob |
checkout -b |
cod |
checkout develop |
abbreviation | equivalent |
---|---|
cl |
clone |
cl1 |
clone --depth 1 |
abbreviation | equivalent |
---|---|
f |
fetch |
fp |
fetch --prune |
abbreviation | equivalent |
---|---|
ps |
push |
psf |
push --force-with-lease |
pso |
push origin |
psfo |
push --force-with-lease origin |
pushall |
!git remote \vert{} xargs -L1 git push |
psl |
!git remote \vert{} xargs -L1 git push |
pullall |
!git remote \vert{} xargs -L1 git pull |
pll |
!git remote \vert{} xargs -L1 git pull |
abbreviation | equivalent |
---|---|
pl |
pull |
pb |
pull --rebase |
abbreviation | equivalent |
---|---|
r |
rebase |
ra |
rebase --abort |
rc |
rebase --continue |
rd |
rebase develop |
ri |
rebase -i |
abbreviation | equivalent |
---|---|
rmf |
rm -f |
rmd |
rm -r |
rmdf |
rm -rf |
abbreviation | equivalent |
---|---|
sm |
submodule |
sms |
submodule status |
sma |
submodule add |
smu |
submodule update |
smui |
submodule update --init |
smuir |
submodule update --init --recursive |
abbreviation | equivalent |
---|---|
st |
stash |
stc |
stash clear |
stp |
stash pop |
stw |
stash show |
abbreviation | equivalent |
---|---|
u |
reset -- |
unstage |
reset -- |
abbreviation | equivalent |
---|---|
d |
diff -w |
l |
log --oneline --graph --decorate |
s |
status |
staged |
diff --cached |
upstream |
!git push -u origin HEAD |
a = add --all aca = !git add --all && git commit --amend acan = !git add --all && git commit --amend --no-edit
[alias]
<<abbrev-gen(abbrevs=git-add-abbrev)>>
<<abbrev-gen(abbrevs=git-branch-abbrev)>>
<<abbrev-gen(abbrevs=git-commit-abbrev)>>
<<abbrev-gen(abbrevs=git-checkout-abbrev)>>
<<abbrev-gen(abbrevs=git-clone-abbrev)>>
<<abbrev-gen(abbrevs=git-fetch-abbrev)>>
<<abbrev-gen(abbrevs=git-push-abbrev)>>
<<abbrev-gen(abbrevs=git-pull-abbrev)>>
<<abbrev-gen(abbrevs=git-rebase-abbrev)>>
<<abbrev-gen(abbrevs=git-rm-abbrev)>>
<<abbrev-gen(abbrevs=git-submodule-abbrev)>>
<<abbrev-gen(abbrevs=git-stash-abbrev)>>
<<abbrev-gen(abbrevs=git-unstage-abbrev)>>
<<abbrev-gen(abbrevs=git-single-abbrev)>>
Tools
Sendemail
[sendemail]
smtpserver = mail.phundrak.com
smtpuser = lucien@phundrak.com
smtpencryption = tls
smtpserverport = 587
[credentials "smtp://lucien@phundrak.com@mail.phundrak.com:587"]
helper = "secret-tool lookup password email_lucien-phundrak-com"
Magit
[magithub]
online = true
[magithub "status"]
includeStatusHeader = true
includePullRequestsSection = true
includeIssuesSection = true
GPG
[gpg]
program = gpg2
[commit]
gpgsign = true
Merge
[merge]
tool = ediff
[mergetool.ediff]
cmd = emacs --eval \" (progn (defun ediff-write-merge-buffer () (let ((file ediff-merge-store-file)) (set-buffer ediff-buffer-C) (write-region (point-min) (point-max) file) (message \\\"Merge buffer saved in: %s\\\" file) (set-buffer-modified-p nil) (sit-for 1))) (setq ediff-quit-hook 'kill-emacs ediff-quit-merge-hook 'ediff-write-merge-buffer) (ediff-merge-files-with-ancestor \\\"$LOCAL\\\" \\\"$REMOTE\\\" \\\"$BASE\\\" nil \\\"$MERGED\\\"))\"
Pager
[pager]
diff = delta
log = delta
reflog = delta
show = delta
Delta
[delta]
features = side-by-side line-numbers decorations
whitespace-error-style = 22 reverse
[delta "decorations"]
commit-decoration-style = bold yellow box ul
file-style = bold yellow ul
file-decoration-style = none
[interactive]
diffFilter = delta --color-only
Git forges
[github]
user = phundrak
[url "https://phundrak@github.com"]
insteadOf = https://github.com
[url "https://phundrak@labs.phundrak.com"]
insteadOf = https://labs.phundrak.com
LFS
[filter "lfs"]
required = true
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process