<root> / gitconfig (786c3d9a58798f782d4c664f7cc33548e11ed732) (1,941B) (mode 100644) [raw]
[init]
    defaultBranch = master

[core]
    # make tabulation character visible in diffs
    pager = sed 's/\t/.       /g' | less -R

[alias]
    co = checkout
    cob = checkout -b
    ci = commit -v
    st = status
    df = diff
    dfw = diff -w
    br = branch
    bra = branch -a
    brd = branch -d
    brdd = branch -D
    hist = log --pretty=format:\"%C(yellow)%h%Creset %C(white)%ad%Creset  %Cgreen%s%Creset%Cred%d%Creset %C(cyan)<by %aN>%Creset\" --graph --date=short
    type = cat-file -t
    dump = cat-file -p
    remotes = !git remote -v | awk 'NR%2 { print $1, $2 }' | column -t
    droptill = reset --hard
    droplast = reset --hard HEAD^
    unstage = reset --mixed HEAD
    amend = commit -v --amend
    append = commit -v --amend -C HEAD
    fix = !vim $(git-ls-files --unmerged | cut -f2 | uniq)
    pend = log origin/master..HEAD
    # to be used if upstream suddenly renamed master branch
    enslave = !run() { \n\
        if [ -z "$1" ]";" then \n\
            echo 'error: remote name must be provided as an argument' \n\
            return 1 \n\
        fi \n\
        if [ -n "$2$3$4$5" ]\n then \n\
            echo 'error: expected only one argument' \n\
            return 1 \n\
        fi \n\
        git config --local --add "remote.$1.fetch" "+refs/heads/main:refs/remotes/$1/master" \n\
        git config --local --add "remote.$1.push" refs/heads/master:refs/heads/main \n\
        git config --local branch.master.merge refs/heads/main \n\
    } && run
    # to be used after cloning to get sane branch naming
    tyrannize = !git branch --move main master && git enslave

[color]
    # enable coloring of git output
    ui = true

[merge]
    # use gvim to resolve merge conflicts
    tool = gvimdiff

[diff "zs-diff"]
    command = zs-diff --color

[diff "zs-diff++"]
    command = zs-diff --lang cxx --color

[difftool "zs-gdiff"]
    cmd = zs-gdiff $LOCAL $REMOTE

# vim: set filetype=gitconfig :
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/dotfiles

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/dotfiles

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master