SlideShare a Scribd company logo
1 of 35
Download to read offline
Subversion to Perforce
in 30 minutes

Tom Tyler, Perforce Software
Consulting Services
Speaker: Tom Tyler

Tom Tyler is a Senior Consultant at
Perforce. He started his career at NASA
Kennedy Space Center in 1990, and has
worked as a developer and consultant in
various software development organizations.
Colleagues knew Tom as “The ClearCase
Guy” before he discovered Perforce in 1999.
He has since been consulting with Perforce
customers large and small.

2
You’re Here Because ...
A Bit About You?
•  The topic sounded interesting and I'm just
curious. There’s no immediate business need.
•  We're contemplating a migration to Perforce.
•  We're committed to migrate to Perforce,
and hoping this helps informs our planning
•  We migrated already, and want to see if we
missed anything.

3
Agenda
• 

Critical Milestones

• 

Migration Approaches
–  Tips
–  Baseline & Branch Import (“BBI”)
–  Detailed History Import (“DHI”)

• 

Transition and Cutover

• 

Technical Tips

• 

Customer Experience

4
Critical Milestones
• 

Executive Decision:
We’re Going to Perforce!

• 

Transition Team Ready
—  Team Selected
—  Team Trained

• 

Migration Plan Ready
—  Migration Approaches Selected
—  Cutover Strategy Defined
—  Transition Strategy Identified
—  Transition Schedule Identified
—  Branching Strategy Planned
5
Critical Milestones
• 

Dry Runs Completed
—  Full Dry Runs (Stress & Load)
—  Data & process snags addressed
—  Pilot / POC

• 

Perforce Environment Ready
—  Migrated Source Code Verified
—  Build Systems Retooled
—  Build Results Verified

•  Users Trained
•  Live on Perforce!
6
Branching Strategy
Mapping the Flow of Change
REL1.1

REL1
REL2

MAIN (fka “trunk”)

Team B
Team A

7
Perforce Directory Standard (PDS)

perforce.com/blog
http://info.perforce.com/PDS.html
8
Migration Approaches
•  Tips Only
–  Copy tips into new system.
•  Baseline & Branch Import (BBI)
-  Bring along only “interesting” history – key
baselines and high-level branch operations.

•  Detailed History Import (DHI)
–  Bring historical details into Perforce.
9
Tips – Latest Files, No History

10
Tips – Latest Files, No History

11
Tips – Latest Files, No History

All files have only 1 rev.

12
Tips – Latest Files, No History

All files have only 1 rev.
One Changelist

13
Baseline & Branch Import (BBI)

14
Baseline & Branch Import (BBI)

//fgs/Jam/3.0-r/src/README

//fgs/Jam/MAIN/src/README
//fgs/Jam/dev/Port_OSX/src/README

15
Baseline & Branch Import (BBI)

//fgs/Jam/3.0-r/src/README

//fgs/Jam/MAIN/src/README
//fgs/Jam/dev/Port_OSX/src/README

16
Baseline & Branch Import (BBI)

//fgs/Jam/3.0-r/src/README

//fgs/Jam/MAIN/src/README
//fgs/Jam/dev/Port_OSX/src/README
One Changelist and
description per Baseline.

17
Baseline & Branch Import (BBI)

//fgs/Jam/3.0-r/src/README

//fgs/Jam/MAIN/src/README
//fgs/Jam/dev/Port_OSX/src/README
Approximately same “time of import”
timestamp for all Changelists/Baselines.

18
Detailed History Import
Read-Only Import Area to “Life In Perforce” Structure

//fgs/main/…

//i_svn/fgs/trunk/…

20
DHI - File History

21
DHI - File History

22
DHI – Folder History

23
DHI – Folder History

24
DHI – Folder History

25
DHI – Folder History

26
Transition and Cutover
•  Grand Opening
–  Friday Subversion, Monday Perforce!

•  Phased by Team
–  Beware software dependencies.
–  Beware dependencies of collaborating teams.
–  Limitations of migration utilities can limit cutover options.

27
Subversion Migration Tech Tips
•  Case Issues: Convert on same platform as server
•  Provision Adequate Hardware Resources!
•  Typemap, file types, and Unicode
•  SVN Empty directories
–  Use ‘.d’ or README files
–  Make dirs in build/deploy files, Makefiles, etc.

28
Subversion Migration Tech Tips
•  Handling SVN Properties
–  Use Perforce Attributes

•  Handling SVN Externals
–  Use flexibility of Workspace Mapping
–  Add Version Specifier files

•  Keep SVN around for a while

29
Why Migrate? Top 6
Drivers

Benefits

•  Vastly more powerful
branching & merging

•  A whole ‘nother level of
capability

•  Scalability

•  A whole ‘nother level of
scalability

•  Better Visualizations (GUI)
•  Preference for Best of Breed
•  Faster
•  Standardization and
Consolidation

•  Faster/better merges and
detection of need to merge
•  Put Developers at the top of
their craft
•  Faster
•  Better ROI on Backup, HA/DR
Solutions, Infrastructure
30
Customer Experience

“

I want to take this opportunity to
acknowledge an outstanding job done
by you supporting us through our
Perforce migration.

”

- Perforce Customer

31
Customer Experience

“

I also had boasted the lofty goal before
we executed the migration that I was
aiming for zero loss of productivity to
our <snip> project as the result of this
migration. I think I can make a case that
this came true, also.
- Perforce Customer

”

32
Customer Experience

“

I have had several people comment
to me that they are impressed at
how smooth the whole migration
process has been.
- Perforce Customer

”

33
Thank You!
Please Send us Your Questions!

34
You’d like to know more about ....
• 
• 
• 
• 
• 

Migration Planning
Migration Approaches
Technical Snags
Transition and Cutover
Details of DHI Tools

Polling Question
35
Resources
•  Website: www.perforce.com
•  Visit the Multimedia Library
•  Demo: eval-demo@perforce.com
•  Support: support@perforce.com
•  Consulting: consulting@perforce.com
•  Phone: 510-864-7400

36

More Related Content

Similar to Subversion to Perforce in 30 minutes

Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Perforce
 
Webinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingWebinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingPerforce
 
Continuous Development: Supporting a Release Model
Continuous Development: Supporting a Release ModelContinuous Development: Supporting a Release Model
Continuous Development: Supporting a Release ModelPerforce
 
Spectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_medSpectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_medMary Elise Dedicke
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOpsCprime
 
Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org - Dev...
Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org -  Dev...Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org -  Dev...
Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org - Dev...DevOpsDays Tel Aviv
 
The Road to Continuous Delivery at Perforce
The Road to Continuous Delivery at PerforceThe Road to Continuous Delivery at Perforce
The Road to Continuous Delivery at PerforcePerforce
 
Starting the DevOps Train
Starting the DevOps TrainStarting the DevOps Train
Starting the DevOps TrainCisco DevNet
 
Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...
Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...
Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...Digital Bond
 
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB
 
Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0
Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0
Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0Aptean
 
Sustaining Engineering - life after DevOps?
Sustaining Engineering - life after DevOps?Sustaining Engineering - life after DevOps?
Sustaining Engineering - life after DevOps?TimothyBonci
 
Mastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement Packs
Mastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement PacksMastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement Packs
Mastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement PacksJan Coetzee
 
Bi4.1 and beyond
Bi4.1 and beyondBi4.1 and beyond
Bi4.1 and beyondsapbisignz
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremKris Buytaert
 
Primavera Unifier: How to Tame Complexity and Achieve Success
Primavera Unifier: How to Tame Complexity and Achieve SuccessPrimavera Unifier: How to Tame Complexity and Achieve Success
Primavera Unifier: How to Tame Complexity and Achieve Successp6academy
 
Forming Agile Scrum Teams to Manage DITA Infrastructure
Forming Agile Scrum Teams to Manage DITA InfrastructureForming Agile Scrum Teams to Manage DITA Infrastructure
Forming Agile Scrum Teams to Manage DITA InfrastructureStan Doherty
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_custdennisn129
 
Patching is Your Friend in the New World Order of EPM and ERP Cloud
Patching is Your Friend in the New World Order of EPM and ERP CloudPatching is Your Friend in the New World Order of EPM and ERP Cloud
Patching is Your Friend in the New World Order of EPM and ERP CloudDatavail
 
Finit one small step - tips and tricks for transitioning from fdm to fdmee
Finit   one small step - tips and tricks for transitioning from fdm to fdmeeFinit   one small step - tips and tricks for transitioning from fdm to fdmee
Finit one small step - tips and tricks for transitioning from fdm to fdmeefinitsolutions
 

Similar to Subversion to Perforce in 30 minutes (20)

Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?
 
Webinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingWebinar: The Acceleration of Everything
Webinar: The Acceleration of Everything
 
Continuous Development: Supporting a Release Model
Continuous Development: Supporting a Release ModelContinuous Development: Supporting a Release Model
Continuous Development: Supporting a Release Model
 
Spectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_medSpectrum2018 agile roadtrip_med
Spectrum2018 agile roadtrip_med
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org - Dev...
Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org -  Dev...Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org -  Dev...
Real-Time Metrics and Distributed Monitoring - Jeff Pierce, Change.org - Dev...
 
The Road to Continuous Delivery at Perforce
The Road to Continuous Delivery at PerforceThe Road to Continuous Delivery at Perforce
The Road to Continuous Delivery at Perforce
 
Starting the DevOps Train
Starting the DevOps TrainStarting the DevOps Train
Starting the DevOps Train
 
Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...
Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...
Time Traveling: Adapting Techniques from the Future to Improve Reliability, J...
 
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
 
Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0
Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0
Principal Financial Group: Stretching CRM Capabilities with Pivotal 6.0
 
Sustaining Engineering - life after DevOps?
Sustaining Engineering - life after DevOps?Sustaining Engineering - life after DevOps?
Sustaining Engineering - life after DevOps?
 
Mastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement Packs
Mastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement PacksMastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement Packs
Mastering SAP Technologies 2013 - Jan Coetzee - PCS - Enhancement Packs
 
Bi4.1 and beyond
Bi4.1 and beyondBi4.1 and beyond
Bi4.1 and beyond
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
 
Primavera Unifier: How to Tame Complexity and Achieve Success
Primavera Unifier: How to Tame Complexity and Achieve SuccessPrimavera Unifier: How to Tame Complexity and Achieve Success
Primavera Unifier: How to Tame Complexity and Achieve Success
 
Forming Agile Scrum Teams to Manage DITA Infrastructure
Forming Agile Scrum Teams to Manage DITA InfrastructureForming Agile Scrum Teams to Manage DITA Infrastructure
Forming Agile Scrum Teams to Manage DITA Infrastructure
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
 
Patching is Your Friend in the New World Order of EPM and ERP Cloud
Patching is Your Friend in the New World Order of EPM and ERP CloudPatching is Your Friend in the New World Order of EPM and ERP Cloud
Patching is Your Friend in the New World Order of EPM and ERP Cloud
 
Finit one small step - tips and tricks for transitioning from fdm to fdmee
Finit   one small step - tips and tricks for transitioning from fdm to fdmeeFinit   one small step - tips and tricks for transitioning from fdm to fdmee
Finit one small step - tips and tricks for transitioning from fdm to fdmee
 

More from Perforce

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsPerforce
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...Perforce
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Perforce
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsPerforce
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessPerforce
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsPerforce
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog Perforce
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Perforce
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowPerforce
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldPerforce
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterprisePerforce
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMPerforce
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog Perforce
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Perforce
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure Perforce
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Perforce
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Perforce
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4Perforce
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Perforce
 
5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis 5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis Perforce
 

More from Perforce (20)

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning Needs
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPs
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development Process
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOps
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New Workflow
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated World
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALM
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison
 
5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis 5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis
 

Recently uploaded

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 

Recently uploaded (20)

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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
 
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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 

Subversion to Perforce in 30 minutes

  • 1. Subversion to Perforce in 30 minutes Tom Tyler, Perforce Software Consulting Services
  • 2. Speaker: Tom Tyler Tom Tyler is a Senior Consultant at Perforce. He started his career at NASA Kennedy Space Center in 1990, and has worked as a developer and consultant in various software development organizations. Colleagues knew Tom as “The ClearCase Guy” before he discovered Perforce in 1999. He has since been consulting with Perforce customers large and small. 2
  • 3. You’re Here Because ... A Bit About You? •  The topic sounded interesting and I'm just curious. There’s no immediate business need. •  We're contemplating a migration to Perforce. •  We're committed to migrate to Perforce, and hoping this helps informs our planning •  We migrated already, and want to see if we missed anything. 3
  • 4. Agenda •  Critical Milestones •  Migration Approaches –  Tips –  Baseline & Branch Import (“BBI”) –  Detailed History Import (“DHI”) •  Transition and Cutover •  Technical Tips •  Customer Experience 4
  • 5. Critical Milestones •  Executive Decision: We’re Going to Perforce! •  Transition Team Ready —  Team Selected —  Team Trained •  Migration Plan Ready —  Migration Approaches Selected —  Cutover Strategy Defined —  Transition Strategy Identified —  Transition Schedule Identified —  Branching Strategy Planned 5
  • 6. Critical Milestones •  Dry Runs Completed —  Full Dry Runs (Stress & Load) —  Data & process snags addressed —  Pilot / POC •  Perforce Environment Ready —  Migrated Source Code Verified —  Build Systems Retooled —  Build Results Verified •  Users Trained •  Live on Perforce! 6
  • 7. Branching Strategy Mapping the Flow of Change REL1.1 REL1 REL2 MAIN (fka “trunk”) Team B Team A 7
  • 8. Perforce Directory Standard (PDS) perforce.com/blog http://info.perforce.com/PDS.html 8
  • 9. Migration Approaches •  Tips Only –  Copy tips into new system. •  Baseline & Branch Import (BBI) -  Bring along only “interesting” history – key baselines and high-level branch operations. •  Detailed History Import (DHI) –  Bring historical details into Perforce. 9
  • 10. Tips – Latest Files, No History 10
  • 11. Tips – Latest Files, No History 11
  • 12. Tips – Latest Files, No History All files have only 1 rev. 12
  • 13. Tips – Latest Files, No History All files have only 1 rev. One Changelist 13
  • 14. Baseline & Branch Import (BBI) 14
  • 15. Baseline & Branch Import (BBI) //fgs/Jam/3.0-r/src/README //fgs/Jam/MAIN/src/README //fgs/Jam/dev/Port_OSX/src/README 15
  • 16. Baseline & Branch Import (BBI) //fgs/Jam/3.0-r/src/README //fgs/Jam/MAIN/src/README //fgs/Jam/dev/Port_OSX/src/README 16
  • 17. Baseline & Branch Import (BBI) //fgs/Jam/3.0-r/src/README //fgs/Jam/MAIN/src/README //fgs/Jam/dev/Port_OSX/src/README One Changelist and description per Baseline. 17
  • 18. Baseline & Branch Import (BBI) //fgs/Jam/3.0-r/src/README //fgs/Jam/MAIN/src/README //fgs/Jam/dev/Port_OSX/src/README Approximately same “time of import” timestamp for all Changelists/Baselines. 18
  • 19. Detailed History Import Read-Only Import Area to “Life In Perforce” Structure //fgs/main/… //i_svn/fgs/trunk/… 20
  • 20. DHI - File History 21
  • 21. DHI - File History 22
  • 22. DHI – Folder History 23
  • 23. DHI – Folder History 24
  • 24. DHI – Folder History 25
  • 25. DHI – Folder History 26
  • 26. Transition and Cutover •  Grand Opening –  Friday Subversion, Monday Perforce! •  Phased by Team –  Beware software dependencies. –  Beware dependencies of collaborating teams. –  Limitations of migration utilities can limit cutover options. 27
  • 27. Subversion Migration Tech Tips •  Case Issues: Convert on same platform as server •  Provision Adequate Hardware Resources! •  Typemap, file types, and Unicode •  SVN Empty directories –  Use ‘.d’ or README files –  Make dirs in build/deploy files, Makefiles, etc. 28
  • 28. Subversion Migration Tech Tips •  Handling SVN Properties –  Use Perforce Attributes •  Handling SVN Externals –  Use flexibility of Workspace Mapping –  Add Version Specifier files •  Keep SVN around for a while 29
  • 29. Why Migrate? Top 6 Drivers Benefits •  Vastly more powerful branching & merging •  A whole ‘nother level of capability •  Scalability •  A whole ‘nother level of scalability •  Better Visualizations (GUI) •  Preference for Best of Breed •  Faster •  Standardization and Consolidation •  Faster/better merges and detection of need to merge •  Put Developers at the top of their craft •  Faster •  Better ROI on Backup, HA/DR Solutions, Infrastructure 30
  • 30. Customer Experience “ I want to take this opportunity to acknowledge an outstanding job done by you supporting us through our Perforce migration. ” - Perforce Customer 31
  • 31. Customer Experience “ I also had boasted the lofty goal before we executed the migration that I was aiming for zero loss of productivity to our <snip> project as the result of this migration. I think I can make a case that this came true, also. - Perforce Customer ” 32
  • 32. Customer Experience “ I have had several people comment to me that they are impressed at how smooth the whole migration process has been. - Perforce Customer ” 33
  • 33. Thank You! Please Send us Your Questions! 34
  • 34. You’d like to know more about .... •  •  •  •  •  Migration Planning Migration Approaches Technical Snags Transition and Cutover Details of DHI Tools Polling Question 35
  • 35. Resources •  Website: www.perforce.com •  Visit the Multimedia Library •  Demo: eval-demo@perforce.com •  Support: support@perforce.com •  Consulting: consulting@perforce.com •  Phone: 510-864-7400 36