git and github for .net developers
DESCRIPTION
Git and GitHub are wildly popular right now with all types of developers. I want to discuss how git (and GitHub) can be used in the .NET world.TRANSCRIPT
Git and GitHub
Twitter: @wbsimmsSkype: William.Barrett.Simms
VCS History – Stone Age
Networking• NoneOperation• Pessimistic locking• Only one person can work on a file at a
timeExamples• RCS, SCCS
VCS History – First Generation
Networking• CentralizedOperation• Optimistic locking• Concurrent development resolved
via merge resolution• Atomic Commits• All commits must be conflict
resolvedExamples• Subversion, ClearCase,
TFS*
VCS History – Second Generation
Networking• Distributed RepositoryOperation• Optimistic locking• Concurrent development
resolved via merge resolution• Atomic Commits• All commits must be conflict
resolvedExamples• Git, Mercurial
VCS History – Current Generation
Make Changes Commit Push
How it works
Make Changes Commit Push! –
Uh-oh Pull Resolve Conflicts Push
Conflict Resolution
GitHub
What’s GitHub?
Centralized Repository• Group authorization• Public and Private
Repositories• Social Coding
• Integrations• Huge!!! (Cool demos to follow)
• Metrics• Great for Agile
• Cheap
• Fast, Easy, Local Branching• “git branch <name>“• Local History• “git log”• Merging• “git merge”
Several UIs and integrations available
Git Features
• git-scm• Command-line• http://git-scm.com• TortoiseGit • Shell integration• http://code.google.com/p/tortoisegit/• Git Source Control Provider• Visual Studio 2013 integration• Via Nuget
My toolset
• Command-line• TortoiseGit
Demo