- git.{{ grains['os'] | lower }}
-{% set git_vars = {
+{% set git_confs = {
'color.ui': 'true',
'color.branch': 'always',
'color.status': 'always',
'color.interactive': 'always',
'color.diff': 'true',
+ 'diff.external': 'difft',
'user.name': 'Maximilian Friedersdorff',
'user.email': 'max@friedersdorff.com',
'user.signingkey': 'F5E7FCB3',
'core.excludesfile': '/home/' + grains['user'] + '/.gitignore',
'merge.tool': 'diffuse',
'merge.ff': 'true',
+ 'pull.rebase': 'false',
'push.default': 'simple',
- 'alias.lg': 'lg = log --graph --pretty=format:\'%Cred%h%Creset %G? %ad %s %C(bold blue)<%an>%Creset %C(yellow)%d%Creset\' --date=short',
+ 'alias.lg': 'log --graph --pretty=format:\'%Cred%h%Creset %G? %ad %s %C(bold blue)<%an>%Creset %C(yellow)%d%Creset\' --date=short',
'alias.hist': 'log --graph --full-history --all --pretty=format:\'%Cred%h%Creset %G? %ad %s %C(bold blue)<%an>%Creset %C(yellow)%d%Creset\' --date=short',
- 'alias.struct': 'struct = log --graph --full-history --all --pretty=format:\'%ad %s %Creset %C(yellow)%d%Creset\' --date=short --simplify-by-decoration',
+ 'alias.struct': 'log --graph --full-history --all --pretty=format:\'%ad %s %Creset %C(yellow)%d%Creset\' --date=short --simplify-by-decoration',
'alias.co': 'checkout',
'alias.ci': 'commit',
'alias.st': 'status',
+ 'alias.vh': 'verify-commit HEAD',
+ 'alias.vc': 'verify-commit',
+ 'alias.vt': 'tag -v',
+ 'alias.tag': 'tag -s',
+ 'alias.t': 'tag -s',
+ 'alias.alias': '!req=$\'\\033[0;31m=\\033[0m\'; git config --get-regexp ^alias\. | sed -e s/^alias\.// -e "s/\ /\t$req\ /"',
+ 'alias.r': 'rebase',
+ 'alias.m': 'merge',
+ 'alias.pa': '!git remote | xargs -L1 git push --all',
+ 'sendemail.smtpserver': 'mail.friedersdorff.com',
+ 'sendemail.smtpuser': 'max',
+ 'sendemail.smtpencryption': 'tls',
+ 'sendemail.smtpserverport': '587',
}
%}
-{% for var,val in git_vars.items() %}
+{% for var,val in git_confs.items() %}
{{ var }}:
git.config_set:
- - value: {{ val }}
+ - value: >-
+ {{ val }}
- global: True
- user: {{ grains['user'] }}
{% endfor %}
+
+global gitignore:
+ file.managed:
+ - name: {{ grains['homedir'] }}/.gitignore
+ - source: {{ grains['stateroot'] }}/git/files/gitignore
+ - mode: 644
+ - user: {{ grains['user'] }}
+ - group: {{ grains['user'] }}