My .gitconfig file

I recently updated to Mountain Lion, and had to install a few more things to get Git to work properly.

I also realized that Git GUI stopped working. A quick addition to my .gitconfig file did the trick, but I thought I’d take the opportunity to share my .gitconfig file with you; it could be useful to someone, and I will be able to come back to that post next time I change my computer :)

[user]
	name = Jeremy Herve
	email = my_email_address
[github]
	user = jeherve
	token = my_token
[color]
	branch = true
	ui = true
	diff = true
	status = true
[alias]
	s = status
	ci = commit
	co = checkout
	ls = branch -a
	oops = reset --soft HEAD~1
	rh = reset --hard
	save = stash save
	pop = stash pop --index
	gui = !sh -c '/usr/local/git/libexec/git-core/git-gui'
	lol = log --oneline --decorate --graph -n 15
	lola = log --oneline --decorate --graph -n 15 --all
[help]
	autocorrect = 1
[core]
	editor = nano

That’s it. If you have any advices or remarks, let me know! I am always looking for more tips!

6 thoughts on “My .gitconfig file

  1. I like ‘oops’, I will cherry-pick it. Here is mine: (credit goes to @tibor and @akos, don’t know anymore which line belongs to who):

    lol = log --oneline --decorate --graph -n 15
    lola = log --oneline --decorate --graph -n 15 --all
    co = checkout
    rh = reset --hard
    save = stash save
    pop = stash pop --index
    restash = !git stash pop  --index && git stash save
    rs = !git stash pop  --index && git stash save
    s = status
    files = diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT
    fixup = !sh -c 'git commit -m "fixup! $(git log -1 --format='\''%s'\'' $@)"' -
    squash = !sh -c 'git commit -m "squash! $(git log -1 --format='\''%s'\'' $@)"' -
    ri = rebase --interactive --autosquash
    f = fetch --all --tags --prune
    hist = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
    rev = log -1 --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'
    
    • That’s a nice follow up! I don’t really use git log (I use gitk for that kind of things), but your some of your aliases make git log a bit more interesting, thanks!

  2. I like lola… :)

    Some missing:

    [branch]
    autosetuprebase = always ## strongly recommended
    [core]
    logallrefupdates = true
    [alias]
    myinit = "!git init && git commit -m "Initial, empty commit" --allow-empty && git branch root"
    [merge]
    conflictstyle = diff3
    
    • I don’t really use Git GUI either, only when I have been lazy and neglected to commit changes for a while. It then becomes a bit too messy to handle via command line :)

      I will give GitX a try then, it seems cool! Thanks!

Comments are closed.