SlideShare uma empresa Scribd logo
1 de 24
Работа със системи за
   управление на сорс код
Мартин Кулов
Microsoft Regional Director
Microsoft Most Valuable Professional
Application Lifecycle Management
•   Requirements Management
•   Architecture
•   Coding
•   Testing
•   Tracking
•   Release Management

                              * Source: Wikipedia
One system to rule them all
Source Control
    a.k.a.
  Revision Control
    a.k.a.
Version Control
Items
Repository
•   Archived folder
•   Email
•   File Share
•   Proprietary
•   SQL Server
Revision Tools
•   Microsoft Word
•   Open Office
•   Word Press
•   Drupal
•   SharePoint
Software Tools
ClientServer                Distributed
•   CVSSVN                  •   DCVS
•   IBM ClearCase            •   Mercurial
•   Perforce                 •   Git
•   Visual SourceSafe        •   Bazaar
•   Team Foundation Server   •   …others
•   …many others
Workflow
                        Get
Create                Latest /
Project                 Pull
           Check In              Check
              /                  Out /
           Commit                 Lock
 Init


                                  Add /
           Merge
Branch                           Change

                        Get
                      Latest /
                        Pull
Other Actions
•   Pending Changes / Outgoing
•   View History
•   Diff
•   Label / Tag
•   Undo Changes / Revert
•   Track Changeset / View Commit
DEMO: SOURCE CONTROL
OPERATIONS
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
Common Branching
   Strategies
Branch per Release




* Source: MSDN
Code-Promotion Branches




* Source: MSDN
Branch per Task




* Source: MSDN
Branch per Component




* Source: MSDN
Branch per Technology




* Source: MSDN
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
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
DEMO: BRANCHING AND
MERGING
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-version-
    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/
JOIN US ON FACEBOOK
SOFIADEV .NET USER GROUP
THANK YOU!

Mais conteúdo relacionado

Mais procurados

Dev Ops Geek Fest: Automating the ForgeRock Platform
Dev Ops Geek Fest: Automating the ForgeRock PlatformDev Ops Geek Fest: Automating the ForgeRock Platform
Dev Ops Geek Fest: Automating the ForgeRock PlatformForgeRock
 
Writing Java EE microservices using WildFly Swarm
Writing Java EE microservices using WildFly SwarmWriting Java EE microservices using WildFly Swarm
Writing Java EE microservices using WildFly SwarmComsysto Reply GmbH
 
WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...
WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...
WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...WSO2
 
Play 2 Java Framework with TDD
Play 2 Java Framework with TDDPlay 2 Java Framework with TDD
Play 2 Java Framework with TDDBasav Nagur
 
Recipes for Continuous Delivery (ThoughtWorks Geeknight)
Recipes for Continuous Delivery (ThoughtWorks Geeknight)Recipes for Continuous Delivery (ThoughtWorks Geeknight)
Recipes for Continuous Delivery (ThoughtWorks Geeknight)Gurpreet Luthra
 
The 7 deadly sins of micro services
The 7 deadly sins of micro servicesThe 7 deadly sins of micro services
The 7 deadly sins of micro servicesAidan Casey
 
DevOps in the Microsoft world part 2
DevOps in the Microsoft world part 2DevOps in the Microsoft world part 2
DevOps in the Microsoft world part 2Evgeniy Savchenko
 
JEE Conf 2015: Less JS!
JEE Conf 2015: Less JS!JEE Conf 2015: Less JS!
JEE Conf 2015: Less JS!_Dewy_
 
Microservices from operations aspect
Microservices from operations aspectMicroservices from operations aspect
Microservices from operations aspectDavid Papp
 
Microservices environment in production
Microservices environment in productionMicroservices environment in production
Microservices environment in productionDavid Papp
 
Hexagonal architecture for java applications
Hexagonal architecture for java applicationsHexagonal architecture for java applications
Hexagonal architecture for java applicationsFabricio Epaminondas
 
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.jsCome Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.jsEric Nograles
 
Azure DevOps Overview [Arabic]
Azure DevOps Overview [Arabic]Azure DevOps Overview [Arabic]
Azure DevOps Overview [Arabic]ahmadezzeir
 
JPA 2.1 on Payara Server
JPA 2.1 on Payara ServerJPA 2.1 on Payara Server
JPA 2.1 on Payara ServerPayara
 
Developing Java EE applications with NetBeans and Payara
Developing Java EE applications with NetBeans and PayaraDeveloping Java EE applications with NetBeans and Payara
Developing Java EE applications with NetBeans and PayaraPayara
 
Get rid of credentials from your code: Using Managed identities for Azure res...
Get rid of credentials from your code: Using Managed identities for Azure res...Get rid of credentials from your code: Using Managed identities for Azure res...
Get rid of credentials from your code: Using Managed identities for Azure res...Joonas Westlin
 
VMworld 2013: vSphere Web Client - Technical Walkthrough
VMworld 2013: vSphere Web Client - Technical WalkthroughVMworld 2013: vSphere Web Client - Technical Walkthrough
VMworld 2013: vSphere Web Client - Technical WalkthroughVMworld
 
Microservices with Spring Boot
Microservices with Spring BootMicroservices with Spring Boot
Microservices with Spring BootRasheed Waraich
 

Mais procurados (20)

Dev Ops Geek Fest: Automating the ForgeRock Platform
Dev Ops Geek Fest: Automating the ForgeRock PlatformDev Ops Geek Fest: Automating the ForgeRock Platform
Dev Ops Geek Fest: Automating the ForgeRock Platform
 
Writing Java EE microservices using WildFly Swarm
Writing Java EE microservices using WildFly SwarmWriting Java EE microservices using WildFly Swarm
Writing Java EE microservices using WildFly Swarm
 
WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...
WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...
WSO2Con USA 2015: End-to-end Microservice Architecture with WSO2 Identity Ser...
 
Play 2 Java Framework with TDD
Play 2 Java Framework with TDDPlay 2 Java Framework with TDD
Play 2 Java Framework with TDD
 
Recipes for Continuous Delivery (ThoughtWorks Geeknight)
Recipes for Continuous Delivery (ThoughtWorks Geeknight)Recipes for Continuous Delivery (ThoughtWorks Geeknight)
Recipes for Continuous Delivery (ThoughtWorks Geeknight)
 
The 7 deadly sins of micro services
The 7 deadly sins of micro servicesThe 7 deadly sins of micro services
The 7 deadly sins of micro services
 
DevOps in the Microsoft world part 2
DevOps in the Microsoft world part 2DevOps in the Microsoft world part 2
DevOps in the Microsoft world part 2
 
JEE Conf 2015: Less JS!
JEE Conf 2015: Less JS!JEE Conf 2015: Less JS!
JEE Conf 2015: Less JS!
 
Microservices from operations aspect
Microservices from operations aspectMicroservices from operations aspect
Microservices from operations aspect
 
Microservices environment in production
Microservices environment in productionMicroservices environment in production
Microservices environment in production
 
Hexagonal architecture for java applications
Hexagonal architecture for java applicationsHexagonal architecture for java applications
Hexagonal architecture for java applications
 
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.jsCome Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
 
Azure DevOps Overview [Arabic]
Azure DevOps Overview [Arabic]Azure DevOps Overview [Arabic]
Azure DevOps Overview [Arabic]
 
JPA 2.1 on Payara Server
JPA 2.1 on Payara ServerJPA 2.1 on Payara Server
JPA 2.1 on Payara Server
 
Developing Java EE applications with NetBeans and Payara
Developing Java EE applications with NetBeans and PayaraDeveloping Java EE applications with NetBeans and Payara
Developing Java EE applications with NetBeans and Payara
 
Microservices with Spring
Microservices with SpringMicroservices with Spring
Microservices with Spring
 
Get rid of credentials from your code: Using Managed identities for Azure res...
Get rid of credentials from your code: Using Managed identities for Azure res...Get rid of credentials from your code: Using Managed identities for Azure res...
Get rid of credentials from your code: Using Managed identities for Azure res...
 
360 flex swiz
360 flex swiz360 flex swiz
360 flex swiz
 
VMworld 2013: vSphere Web Client - Technical Walkthrough
VMworld 2013: vSphere Web Client - Technical WalkthroughVMworld 2013: vSphere Web Client - Technical Walkthrough
VMworld 2013: vSphere Web Client - Technical Walkthrough
 
Microservices with Spring Boot
Microservices with Spring BootMicroservices with Spring Boot
Microservices with Spring Boot
 

Destaque

Presentatie Barbara Schouten (GfK) @ MPJC 2011
Presentatie Barbara Schouten (GfK) @ MPJC 2011Presentatie Barbara Schouten (GfK) @ MPJC 2011
Presentatie Barbara Schouten (GfK) @ MPJC 2011Media Perspectives
 
Strategic Thought Leadership In The New Millennium
Strategic Thought Leadership In The New MillenniumStrategic Thought Leadership In The New Millennium
Strategic Thought Leadership In The New MillenniumMoonSoup, Inc.
 
postBuild 2012 Highlights
postBuild 2012 HighlightspostBuild 2012 Highlights
postBuild 2012 HighlightsMartin Kulov
 
Secrets of .NET Assemblies and Memory Management
Secrets of .NET Assemblies and Memory ManagementSecrets of .NET Assemblies and Memory Management
Secrets of .NET Assemblies and Memory ManagementAbhishek Sur
 
.Net memory management ndc london
.Net memory management   ndc london.Net memory management   ndc london
.Net memory management ndc londonbenemmett
 
Performance Testing for Scalable Microservices - Martin Kulov
Performance Testing for Scalable Microservices - Martin KulovPerformance Testing for Scalable Microservices - Martin Kulov
Performance Testing for Scalable Microservices - Martin KulovMartin Kulov
 

Destaque (8)

Presentatie Barbara Schouten (GfK) @ MPJC 2011
Presentatie Barbara Schouten (GfK) @ MPJC 2011Presentatie Barbara Schouten (GfK) @ MPJC 2011
Presentatie Barbara Schouten (GfK) @ MPJC 2011
 
Software copy
Software   copySoftware   copy
Software copy
 
Strategic Thought Leadership In The New Millennium
Strategic Thought Leadership In The New MillenniumStrategic Thought Leadership In The New Millennium
Strategic Thought Leadership In The New Millennium
 
postBuild 2012 Highlights
postBuild 2012 HighlightspostBuild 2012 Highlights
postBuild 2012 Highlights
 
Secrets of .NET Assemblies and Memory Management
Secrets of .NET Assemblies and Memory ManagementSecrets of .NET Assemblies and Memory Management
Secrets of .NET Assemblies and Memory Management
 
Inside CoreCLR
Inside CoreCLRInside CoreCLR
Inside CoreCLR
 
.Net memory management ndc london
.Net memory management   ndc london.Net memory management   ndc london
.Net memory management ndc london
 
Performance Testing for Scalable Microservices - Martin Kulov
Performance Testing for Scalable Microservices - Martin KulovPerformance Testing for Scalable Microservices - Martin Kulov
Performance Testing for Scalable Microservices - Martin Kulov
 

Semelhante a Source Control Systems Explained

Source control - what you need to know
Source control - what you need to knowSource control - what you need to know
Source control - what you need to knowdaveymni
 
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...Denim Group
 
DevOps in the Microsoft world part 1
DevOps in the Microsoft world part 1DevOps in the Microsoft world part 1
DevOps in the Microsoft world part 1Evgeniy Savchenko
 
DevOps by examples @ devopsheroes 2016
DevOps by examples @ devopsheroes 2016DevOps by examples @ devopsheroes 2016
DevOps by examples @ devopsheroes 2016Giulio Vian
 
How to avoid microservice pitfalls
How to avoid microservice pitfallsHow to avoid microservice pitfalls
How to avoid microservice pitfallsParticular Software
 
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...E. Camden Fisher
 
Version Control and Continuous Integration
Version Control and Continuous IntegrationVersion Control and Continuous Integration
Version Control and Continuous IntegrationGeff Henderson Chang
 
Oscon London 2016 - Docker from Development to Production
Oscon London 2016 - Docker from Development to ProductionOscon London 2016 - Docker from Development to Production
Oscon London 2016 - Docker from Development to ProductionPatrick Chanezon
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the DatabaseMichaela Murray
 
Evolve 2017 - Vegas - Devops, Docker and Security
Evolve 2017 - Vegas - Devops, Docker and Security Evolve 2017 - Vegas - Devops, Docker and Security
Evolve 2017 - Vegas - Devops, Docker and Security John Willis
 
DNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made SimpleDNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made SimpleWill Strohl
 
Penny coventry fiddler-spsbe23
Penny coventry fiddler-spsbe23Penny coventry fiddler-spsbe23
Penny coventry fiddler-spsbe23BIWUG
 
DevOps+Data: Working with Source Control
DevOps+Data: Working with Source ControlDevOps+Data: Working with Source Control
DevOps+Data: Working with Source ControlEd Leighton-Dick
 
Introduction of vertical crawler
Introduction of vertical crawlerIntroduction of vertical crawler
Introduction of vertical crawlerJinglun Li
 
GitLab 라이선스별 특징 요약 - 인포그랩
GitLab 라이선스별 특징 요약 - 인포그랩GitLab 라이선스별 특징 요약 - 인포그랩
GitLab 라이선스별 특징 요약 - 인포그랩InfoGrab LC
 
Magento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRMagento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRDenis Ristic
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchHoward Greenberg
 

Semelhante a Source Control Systems Explained (20)

Source control - what you need to know
Source control - what you need to knowSource control - what you need to know
Source control - what you need to know
 
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
 
DevOps in the Microsoft world part 1
DevOps in the Microsoft world part 1DevOps in the Microsoft world part 1
DevOps in the Microsoft world part 1
 
DevOps by examples @ devopsheroes 2016
DevOps by examples @ devopsheroes 2016DevOps by examples @ devopsheroes 2016
DevOps by examples @ devopsheroes 2016
 
How to avoid microservice pitfalls
How to avoid microservice pitfallsHow to avoid microservice pitfalls
How to avoid microservice pitfalls
 
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
 
Version Control and Continuous Integration
Version Control and Continuous IntegrationVersion Control and Continuous Integration
Version Control and Continuous Integration
 
Oscon London 2016 - Docker from Development to Production
Oscon London 2016 - Docker from Development to ProductionOscon London 2016 - Docker from Development to Production
Oscon London 2016 - Docker from Development to Production
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the Database
 
Evolve 2017 - Vegas - Devops, Docker and Security
Evolve 2017 - Vegas - Devops, Docker and Security Evolve 2017 - Vegas - Devops, Docker and Security
Evolve 2017 - Vegas - Devops, Docker and Security
 
DNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made SimpleDNN Summit 2021: DNN Upgrades Made Simple
DNN Summit 2021: DNN Upgrades Made Simple
 
Penny coventry fiddler-spsbe23
Penny coventry fiddler-spsbe23Penny coventry fiddler-spsbe23
Penny coventry fiddler-spsbe23
 
DevOps+Data: Working with Source Control
DevOps+Data: Working with Source ControlDevOps+Data: Working with Source Control
DevOps+Data: Working with Source Control
 
Versioning for Developers
Versioning for DevelopersVersioning for Developers
Versioning for Developers
 
Introduction of vertical crawler
Introduction of vertical crawlerIntroduction of vertical crawler
Introduction of vertical crawler
 
GitLab 라이선스별 특징 요약 - 인포그랩
GitLab 라이선스별 특징 요약 - 인포그랩GitLab 라이선스별 특징 요약 - 인포그랩
GitLab 라이선스별 특징 요약 - 인포그랩
 
Magento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRMagento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HR
 
DevOps tools for winning agility
DevOps tools for winning agilityDevOps tools for winning agility
DevOps tools for winning agility
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
 
Session 2
Session 2Session 2
Session 2
 

Último

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Último (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

Source Control Systems Explained

  • 1. Работа със системи за управление на сорс код Мартин Кулов Microsoft Regional Director Microsoft Most Valuable Professional
  • 2. Application Lifecycle Management • Requirements Management • Architecture • Coding • Testing • Tracking • Release Management * Source: Wikipedia
  • 3. One system to rule them all
  • 4. Source Control a.k.a. Revision Control a.k.a. Version Control
  • 6. Repository • Archived folder • Email • File Share • Proprietary • SQL Server
  • 7. Revision Tools • Microsoft Word • Open Office • Word Press • Drupal • SharePoint
  • 8. Software Tools ClientServer Distributed • CVSSVN • DCVS • IBM ClearCase • Mercurial • Perforce • Git • Visual SourceSafe • Bazaar • Team Foundation Server • …others • …many others
  • 9. Workflow Get Create Latest / Project Pull Check In Check / Out / Commit Lock Init Add / Merge Branch Change Get Latest / Pull
  • 10. Other Actions • Pending Changes / Outgoing • View History • Diff • Label / Tag • Undo Changes / Revert • Track Changeset / View Commit
  • 12. 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
  • 13. Common Branching Strategies
  • 14. Branch per Release * Source: MSDN
  • 16. Branch per Task * Source: MSDN
  • 17. Branch per Component * Source: MSDN
  • 18. Branch per Technology * Source: MSDN
  • 19. 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
  • 20. 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
  • 22. 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-version- 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/
  • 23. JOIN US ON FACEBOOK SOFIADEV .NET USER GROUP