aboutsummaryrefslogtreecommitdiffstats
path: root/_gitconfig
blob: 0d1fb328c7774a66e9a735373be60bb785b5190a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#
# ~/.gitconfig
# User's global Git configuration file
#
# Credit:
# * https://gist.github.com/pksunkara/988716
#
# References:
# [1] A Git Horror Story: Repository Integrity with Signed Commits
#     https://mikegerwitz.com/papers/git-horror-story.html
# [2] What are the advantages and disadvantages of cryptographically
#     signing commits and tags in Git?
#     https://softwareengineering.stackexchange.com/a/212216
#
# Aaron LI
#

[init]
    defaultBranch = master

[core]
    # Use 'less' as the pager and display tabs of width 8
    pager = less -x1,9 -R

[user]
    name = Aaron LI
    email = aly@aaronly.me
    signingKey = aly@aaronly.me

[push]
    default = simple

[pull]
    ff = only

[commit]
    template = ~/.gitmessage

[tag]
    # Sign every tag
    gpgSign = true

[diff]
    # Show space and tabs
    wsErrorHighlight = all

[alias]
    ref-next = !sh -c 'git log --ancestry-path --format=%H ${1:-HEAD}..master | tail -n 1' -
    log-next = !git ref-next $1 | xargs git log
    cp = cherry-pick

# Large file storage
[filter "lfs"]
    clean = git-lfs clean -- %f
    smudge = git-lfs smudge -- %f
    process = git-lfs filter-process
    required = true