Skip to content

Instantly share code, notes, and snippets.

@nbomberger
Last active August 29, 2015 13:56
Show Gist options
  • Save nbomberger/9005579 to your computer and use it in GitHub Desktop.
Save nbomberger/9005579 to your computer and use it in GitHub Desktop.
Power gitconfig
[user]
name = <Your name>
email = <your email>
logallrefupdates=true
[core]
excludesfile = /Users/<home dir>/.gitignore_global
[credential]
helper = osxkeychain
[color]
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "status"]
added = yellow
changed = green
untracked = cyan
[alias]
st = status
ci = commit
br = branch
co = checkout
df = diff
lg = log -p
lol = log --graph --decorate --pretty=oneline --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
ls = ls-files
pu = !"git fetch origin -v; git fetch upstream -v; git merge upstream/master"
track = update-index --no-assume-unchanged
untrack = update-index --assume-unchanged
ls-untrack = ls-files -v | grep "^[[:lower:]]"
[push]
default = matching
[branch "master"]
remote = origin
merge = refs/heads/master
rebase = true
[rerere]
enabled = 1
[difftool "Kaleidoscope"]
cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\"
[diff]
tool = Kaleidoscope
[difftool]
prompt = false
[mergetool "Kaleidoscope"]
cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot
trustExitCode = true
[mergetool]
prompt = false
[merge]
tool = Kaleidoscope
[branch]
autosetuprebase = always
# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so
*.class
# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
# Logs and databases #
######################
*.log
*.sql
*.sqlite
# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
# Images
######################
*.jpg
*.png
*.tif
*.bmp
# AppCode stuff
.idea/
#########################
## .gitignore file for Xcode4 / OS X Source projects
##
## Version 2.0
## For latest version, see: http://stackoverflow.com/questions/49478/git-ignore-file-for-xcode-projects
##
## 2013 updates:
## - fixed the broken "save personal Schemes"
##
## NB: if you are storing "built" products, this WILL NOT WORK,
## and you should use a different .gitignore (or none at all)
## This file is for SOURCE projects, where there are many extra
## files that we want to exclude
##
##########################
#
######
## OS X temporary files that should never be committed
#
.DS_Store
*.swp
*.lock
profile
#
#
#####
## Xcode temporary files that should never be committed
##
## NB: NIB/XIB files still exist even on Storyboard projects, so we want this...
#
*~.nib
#
#
#####
## Xcode build files -
##
## NB: slash on the end, so we only remove the FOLDER, not any files that were badly named "DerivedData"
#
DerivedData/
#
## NB: slash on the end, so we only remove the FOLDER, not any files that were badly named "build"
#
build/
#
#
######
## Xcode private settings (window sizes, bookmarks, breakpoints, custom executables, smart groups)
##
## This is complicated:
##
## SOMETIMES you need to put this file in version control.
## Apple designed it poorly - if you use "custom executables", they are
## saved in this file.
## 99% of projects do NOT use those, so they do NOT want to version control this file.
## ..but if you're in the 1%, comment out the line "*.pbxuser"
#
*.pbxuser
*.mode1v3
*.mode2v3
*.perspectivev3
## NB: also, whitelist the default ones, some projects need to use these
!default.pbxuser
!default.mode1v3
!default.mode2v3
!default.perspectivev3
#
#
#####
## Xcode 4 - semi-personal settings
##
##
## OPTION 1: ---------------------------------
## throw away ALL personal settings (including custom schemes!
## - unless they are "shared")
##
## NB: this is exclusive with OPTION 2 below
xcuserdata
#
## OPTION 2: ---------------------------------
## get rid of ALL personal settings, but KEEP SOME OF THEM
## - NB: you must manually uncomment the bits you want to keep
##
## NB: this is exclusive with OPTION 1 above
##
xcuserdata/**/*
#
## (requires option 2 above): Personal Schemes
##
!xcuserdata/**/xcschemes/*
#
#####
## XCode 4 workspaces - more detailed
##
## Workspaces are important! They are a core feature of Xcode - don't exclude them :)
##
## Workspace layout is quite spammy. For reference:
##
## /(root)/
## /(project-name).xcodeproj/
## project.pbxproj
## /project.xcworkspace/
## contents.xcworkspacedata
## /xcuserdata/
## /(your name)/xcuserdatad/
## UserInterfaceState.xcuserstate
## /xcsshareddata/
## /xcschemes/
## (shared scheme name).xcscheme
## /xcuserdata/
## /(your name)/xcuserdatad/
## (private scheme).xcscheme
## xcschememanagement.plist
##
##
#
#####
## Xcode 4 - Deprecated classes
##
## Allegedly, if you manually "deprecate" your classes, they get moved here.
##
## We're using source-control, so this is a "feature" that we do not want!
#
#*.moved-aside
#
#
#####
## UNKNOWN: recommended by others, but I can't discover what these files are
##
## ...none. Everything is now explained.
Pods/*
*.xccheckout
*Graveyard.storyboard
*Subliminal
*Subliminal\ Integration*
# Ruby stuff
.ctags
*.ctags
Gemfile.dev*
.tags
.gemtags
.yardoc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment