A talk on how git changed the way I develop software. Of course, I had to throw in the obligatory TFS jokes in there, given the audience.
I gave this talk to the Houston Open Developers User Group on March 1st, 2012.
http://houopendev.net
gitBen Scheirman
View Slide
what scm tool areyou using?
what scm tool areyou using?Subversion? TFS? VSS?CVS? Perforce?git? hg?MKS?FSA?
TFS
TFSTeam Frustration Server?
TFSTotally Fucking Stupid?
TFSTempt Fate & Suffer?
all kidding aside...I don't love git because it'sbetter than TFS...
I love gitbecause it's freaking awesome.
stop me if thissounds familiar
learning git changedthe way I developsoftware
why git?
git is fast
git is distributed
git is forgiving$ git commit --amend
git probably matches yourworkflow
git demoinitializationstaging filescommittingremotespush / pull
Branching
BranchingDon't believe the FUD...branching is EASY
Branching is lightweight
merge versus rebase
merge versus rebaseMerge
merge versus rebaseMergeRebase
Never rebase a publicbranch
git demobranchmergerebase
Feature Branchesa.k.a "topic" branches
Merge (no fast-forward)
Hotfixes
contribute to opensource projects$ git clone [email protected]/username/project.gitFork & Clone the project$ git remote add upstream http://github.com/user/project.gitAdd a remote called "upstream"
Thank YouCredits‣http://whygitisbetterthanx.com‣http://nvie.com/posts/a-successful-git-branching-model/‣http://progit.org/