get rid of visual sourcesafe codemash 2010
DESCRIPTION
Are you still using Visual Source Safe? Have you heard about all the other version control systems that are out there but have not had the time or patience to evaluate them? Come and learn about the ins and outs, ups and downs of Team Foundation System, Subversion, and Git : what they offer and how to integrate them into your current environment.TRANSCRIPT
Get Rid Of Visual SourceSafe??!
By: Joe Kuemerle / @jkuemerle
www.preemptive.com / @PreEmptive
Background of Joe KuemerleLead Developer at PreEmptive Solutions
Over 15 years of development experience with a broad range of technologies
Focused on application and data security, coding best practices and regulatory compliance
Presenter at community events, CodeMash, devLink and MSDN Developer Conference 2009
High Level OverviewVisual Source Safe (VSS) :
Microsoft’s file based version control system (VCS)
Team Foundation Server (TFS) : Microsoft’s client/server application lifecycle management (ALM)suite, includes VCS component
Subversion (SVN) : Open source client/server VCS
Git (GIT) : Open source distributed VCS
TFS Cheatsheet
SVN Cheatsheet
GIT Cheatsheet
VSS Cheatsheet
Say Goodbye To
New Concepts
Edit & Merge
Repository Structure
Branch & Merge
T
TFSAdequate repository branchingCan only merge with direct ascendant/descendant.
SVN Robust repository branchingVery good merge support
GITSupport for local and repository branchingVery good merge supportEasy to branch per feature
Connectivity
T
TFSRequires near constant server connectionPoor offline supportSupports HTTP, HTTPS
SVNOccasional server connectionVery good offline supportSupports HTTP, HTTPS, SSH, file, SVN
GITRequires server connection only when necessary to syncExcellent offline supportSupports HTTP, HTTPS, SSH, file, GIT
Integration Options
T
TFSWindows, Mac/Linux via 3rd partyCommand Line, Visual Studio, Eclipse (3rd party)Few other toolsSome CI tools
SVNWindows, Mac, LinuxCommand line, Explorer, Visual Studio, EclipseMany text editors and merge toolsMost CI tools
GITWindows, Mac, LinuxCommand line, Explorer, Visual Studio, EclipseText editors and merge toolsMany CI tools
Licensing And Support
T
TFSProduct support from Microsoft, active community supportServer requires either a license ($) or up to 5 users (Workgroup, free)Clients require either a CAL or VST* SKU (except Workgroup)
SVNProduct support from various 3rd parties, very active community supportNo server licenseMost clients are free/open source.
GITProduct support from 3rd parties, very active community supportNo server licenseClients are free/open source
Authentication & Authorization
T
TFS Active Directory used for AuthenticationRich set of authorization options based on Active Directory
SVN Rich set of Authentication options including Active Directory via LDAPR/W authorization based on repository paths
GIT Authentication available via HTTP Basic AuthAuthorization based on repository access
Server Requirements
T
TFSWindows onlyIIS and SharePointSQL Server storage
SVNLinux, Mac, WindowsDaemon , Apache module, IIS or file systemFile system or Berkley DB storage
GITLinux, Max, WindowsDaemon, Apache module or file systemFile system storage
ALM Options
T
TFSOut of box (OOB) integration with Team System Work Item Tacking OOB integration with SharePointOOB integration with Team Build, easy to add to other CI
SVNEasy integration with Trac and most other WIT systemsIntegration possible with document managementEasy integration with most any CI
GITIntegration with Trac, FogBugz and other WIT systemsIntegration possible with document managementIntegration with most any CI
How to try it out
T
TFSVirtual Machine available from Microsofthttp://www.microsoft.com/downloads/details.aspx?FamilyID=c7a809d8-8c9f-439f-8147-948bc6957812&displaylang=en
SVN VisualSVN Serverhttp://www.visualsvn.com/server/
GIT msysget : http://code.google.com/p/msysgit
Migration
T
TFS VSS Converter : http://msdn.microsoft.com/en-us/library/ms253090(VS.80).aspxSVN Vss2svn : http://www.pumacode.org/projects/vss2svn
GIT vss2Git : http://code.google.com/p/vss2git/
Overcoming Resistance
T
TFSWho ever got fired for buying Microsoft?
SVN
GIT Fast, powerful, cutting edge
Mature, widely used, well documented
Other options
CVS
References
Resources Version Control
◦ Eric Sink http://www.ericsink.com Team Foundation Server
◦ Radio TFS Podcast: http://www.radiotfs.com/◦ Brian Harry’s blog: http://blogs.msdn.com/bharry◦ Aaron Halberg’s blog: http://blogs.msdn.com/aaronhallberg
Subversion◦ http://subversion.tigris.org/◦ Version Control With Subversion: http://svnbook.red-bean.com/◦ VisualSVN: http://www.visualsvn.com / AnkhSVN:
http://ankhsvn.open.collab.net/ Git
◦ Git Community Book: http://book.git-scm.com/◦ Git for Windows Developers:
http://www.lostechies.com/blogs/jason_meridth/archive/2009/06/01/git-for-windows-developers-git-series-part-1.aspx
◦ Why Git is Better than X : http://whygitisbetterthanx.com/◦ Git – SVN Crash Course: http://git.or.cz/course/svn.html
Photo Creditshttp://www.flickr.com/photos/rcsj/2501021636http://www.flickr.com/photos/emeryway/3126676119http://www.flickr.com/photos/gfreeman23/3373802436http://www.flickr.com/photos/brostad/3246033875http://farm1.static.flickr.com/119/254390052_f8c55dbeb2.jpghttp://www.flickr.com/photos/woodysworld1778/2120107695http://www.flickr.com/photos/hadi_fooladi/409096822http://www.flickr.com/photos/believekevin/130936470/http://www.flickr.com/photos/obd-design/2374030181http://farm2.static.flickr.com/1044/796971032_ef40405ac6.jpghttp://www.flickr.com/photos/andreiz/1164608259http://www.flickr.com/photos/clappstar/178050837http://www.flickr.com/photos/samgrover/20343010http://www.flickr.com/photos/acbo/2187616739http://www.flickr.com/photos/brewbooks/259423573http://www.flickr.com/photos/edgeplot/1529475806