SofiaDev L9 Source Control Management
-
Upload
martin-kulov -
Category
Technology
-
view
868 -
download
1
Transcript of SofiaDev L9 Source Control Management
![Page 1: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/1.jpg)
Работа със системи за управление на сорс код
Мартин КуловMicrosoft Regional DirectorMicrosoft Most Valuable Professional
![Page 2: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/2.jpg)
Application Lifecycle Management
• Requirements Management• Architecture• Coding• Testing• Tracking• Release Management
* Source: Wikipedia
![Page 3: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/3.jpg)
One system to rule them all
![Page 4: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/4.jpg)
Source Control
Version Control
a.k.a.
a.k.a.Revision Control
![Page 5: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/5.jpg)
Items
![Page 6: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/6.jpg)
Repository
• Archived folder• Email• File Share• Proprietary• SQL Server
![Page 7: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/7.jpg)
Revision Tools
• Microsoft Word• Open Office• Word Press• Drupal• SharePoint
![Page 8: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/8.jpg)
Software Tools
Client\Server• CVS\SVN• IBM ClearCase• Perforce• Visual SourceSafe• Team Foundation
Server• …many others
Distributed• DCVS• Mercurial• Git• Bazaar• …others
![Page 9: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/9.jpg)
Workflow
Create Project
Init
Branch
Get Latest /
Pull
Check Out / Lock
Add / Change
Get Latest /
Pull
Merge
Check In /
Commit
![Page 10: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/10.jpg)
Other Actions
• Pending Changes / Outgoing• View History• Diff• Label / Tag• Undo Changes / Revert• Track Changeset / View Commit
![Page 11: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/11.jpg)
DEMO: SOURCE CONTROL OPERATIONS
![Page 12: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/12.jpg)
What is a branch?
• “A branch is what happens when your development team needs to work on two distinct copies of a project at the same time.”
Eric Sink – Source Control HOWTO
![Page 13: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/13.jpg)
Common Branching Strategies
![Page 14: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/14.jpg)
Branch per Release
* Source: MSDN
![Page 15: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/15.jpg)
Code-Promotion Branches
* Source: MSDN
![Page 16: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/16.jpg)
Branch per Task
* Source: MSDN
![Page 17: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/17.jpg)
Branch per Component
* Source: MSDN
![Page 18: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/18.jpg)
Branch per Technology
* Source: MSDN
![Page 19: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/19.jpg)
Thoughts on DVCS
“To me, the fact that they make branching and merging easier just means that your coworkers are more likely to branch and merge, and you’re more likely to be confused.”* Eric Sink on the Stack Overflow Podcast
![Page 20: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/20.jpg)
Branching and Merging Anti-Patterns
• Merge Paranoia • Merge Mania• Big Bang Merge• Never-Ending Merge• Wrong-Way Merge• Branch Mania• Cascading Branches• Mysterious Branches• Temporary Branches• Volatile Branches• Development Freeze• Berlin Wall
* Source: MSDN
![Page 21: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/21.jpg)
DEMO: BRANCHING AND MERGING
![Page 22: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/22.jpg)
Resources
• http://en.wikipedia.org/wiki/Application_lifecycle_management
• http://en.wikipedia.org/wiki/Revision_control• http://
en.wikipedia.org/wiki/List_of_revision_control_software• http://betterexplained.com/articles/a-visual-guide-to-versi
on-control/
• http://www.ericsink.com/scm/source_control.html• http
://msdn.microsoft.com/en-US/library/aa730834(v=VS.80).aspx
• http://www.cmcrossroads.com/bradapp/acme/branching /• http://branchingguidance.codeplex.com/
![Page 23: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/23.jpg)
JOIN US ON FACEBOOKSOFIADEV .NET USER GROUP
![Page 24: SofiaDev L9 Source Control Management](https://reader035.fdocuments.us/reader035/viewer/2022070316/5558c335d8b42a235c8b45c6/html5/thumbnails/24.jpg)
THANK YOU!