SlideShare una empresa de Scribd logo
1 de 29
© 2020 Perforce Software, Inc.
Better, Faster, Easier:
How to Make Git Really Work in the Enterprise
perforce.com2 | © 2020 Perforce Software, Inc.
Introductions
Brad Hart
CTO, VCS
Perforce
Chuck Gehman
Technical Solution Specialist
Perforce
perforce.com3 | © 2020 Perforce Software, Inc.
Better, Faster, Easier:
How to Make Git Really Work in the Enterprise
1
2
3
4
Enterprise Challenges
Ways to Solve These Problems
How to Make Git Better, Faster, and Easier — with Perforce
Q&A
Enterprise Challenges
perforce.com5 | © 2020 Perforce Software, Inc.
3 Enterprise Challenges
1. You work with third party or outsourced development teams.
2. You use open source in your products.
3. You have different workflow needs for different teams.
Ways to Solve Them
perforce.com7 | © 2020 Perforce Software, Inc.
Challenge 1:
You Work With Third Party or Outsourced Development Teams
• Almost all large software companies outsource to:
• Cut costs.
• Focus on core value.
• Increase capacity.
• Third party and outsourcing challenges:
• Developers are often less skilled – requires review process.
• Very often only trained in one VCS – usually Git.
• Too expensive to train teams in other VCS.
• Members are often transient.
• Need extra security to isolate what IP they can work on/see.
• Integrating their code with larger codebase for build/release.
perforce.com8 | © 2020 Perforce Software, Inc.
Solution 1:
Granular Access Controls, Compliance, and Governance
• Third party code mastered in Helix Server.
• Local performance for remote teams.
Reduce risk and overhead of managing third party / outsourced teams.
• Native Git code review.
• Single source of truth.
• Remote teams only can access what you allow.
Outsource Dev Center
Dynamic Git Proxy
perforce.com9 | © 2020 Perforce Software, Inc.
Challenge 2:
You Use Open Source in Your Products
• 35–50% of any given commercial product is open source.
• Why OSS?
• Reusable building blocks (database drivers, APIs, frameworks, etc.)
• Why reinvent the wheel?
• Large community support (often more developers than YOU have).
• FREE!
• Faster time to market.
• Lets you focus on YOUR value add.
perforce.com10 | © 2020 Perforce Software, Inc.
PROPRIETARY CODE
GitHub.com
GitLab.com
How do you:
• Get the OSS code?
• Keep it up to date?
• Build it all together?
• Work with mixed sources?
• Prevent multiple different copies
being used?
Challenge 2:
You Use Open Source in Your Products
perforce.com11 | © 2020 Perforce Software, Inc.
Solution 2:
Bring Order to the Chaos With a Single Source of Truth
• Helix4Git intelligently mirrors code from external sources.
• Helix Server pulls it all together (single source of truth).
• Helix workspaces can access Core AND Git code.
• Native Git access to Git code.
• The result: Simplified, unified build process for all code.
Improve productivity while maintaining control.
perforce.com12 | © 2020 Perforce Software, Inc.
Challenge 3:
You Have Different Workflow Needs For Different Teams
• Mobile applications:
• SIMPLE.
• Small teams.
• Git is fine.
• Mobile OS software and hardware:
• Complex & large scale.
• Lots of interdependencies.
• Regulatory requirements.
• OEM requirements.
• Requires enterprise-grade VCS.
perforce.com13 | © 2020 Perforce Software, Inc.
Solution 3:
Flexible Workflows & Ability to Handle Code and Non-Code Assets
Hardware and OS Engineers
App Developers
• Single source of truth.
• Simplified DR.
• Unified builds.
• Flexibility (each team uses what is the best fit).
Teams increase productivity by using the right tool
— while the business maintains control.
How to Make Git Better, Faster, and Easier — With Perforce
perforce.com15 | © 2020 Perforce Software, Inc.
How Perforce Makes Git Better, Faster, and Easier
Helix4Git is a high performance Git server.
Provides better performance than open
source Git servers, especially with remote
sites over WAN links.
Developers use their existing front-end
Git code management tools or use ours:
Helix TeamHub.
Helix TeamHub is a Git code
management solution.
Self-service project administration for
team collaboration.
Modern web UI with code review, wikis
and Kanban boards.
CI/CD workflows.
Your favorite IDEs, including Visual
Studio and IntelliJ
The leading build runners like Jenkins
Most popular tools like Jira and other
issue management and ALM tools
The most powerful Game and 3D engines
like Unreal and Unity
The fastest version control system (VCS).
Security with granular permissions,
enterprise authentication, secure replication.
10s of 1,000s of users, millions of
transactions per day.
Code and large binary objects.
Central, single source of truth.
Single
Server
perforce.com16 | © 2020 Perforce Software, Inc.
Perforce customer base includes leading technology enterprises and 250+ of the Fortune 500
Global Customer Base in Technology
19 of the top 20
game development studios
9 of the top 10
semiconductor companies
9 of the top 10
automotive companies
perforce.com17 | © 2020 Perforce Software, Inc.
Summary
Outsource
Amazing
Open Source
Excellent
Internal Teams
Stellar
Q&A
Appendix
perforce.com20 | © 2020 Perforce Software, Inc.
• Optimized push AND pull.
• No Git tool switching required.
• Helix4Git mirrors data from
preferred Git tool(s).
Helix Versioning Engine
Geographically Distributed Development
perforce.com21 | © 2020 Perforce Software, Inc.
• Git is not architected for large binaries.
• Git LFS is not native Git.
• Helix Core is architected for and natively supports
large binaries.
Large Binary File Management
perforce.com22 | © 2020 Perforce Software, Inc.
• Building products with assets housed from
multiple sources is complex.
• Helix Core/Helix4Git support hybrid workspaces
with Perforce and Git assets combined together:
• Build from one source of truth.
• Build faster and easier.
Managing the Complexity of Sources from More Than One System
perforce.com23 | © 2020 Perforce Software, Inc.
• Cumbersome to maintain a reliable and
repeatable audit trail with multiple
sources of truth.
• Lack of native Git security and data
protection.
• Simplify by combining Git data with Helix
Core in a single platform.
Auditability/Traceability
perforce.com24 | © 2020 Perforce Software, Inc.
• Critical for building high-velocity
development pipeline.
• Shift left (find bugs earlier):
• Using native Git from a CI
server can be slow.
Faster Builds = Faster Feedback
perforce.com25 | © 2020 Perforce Software, Inc.
• Disaster recovery (DR) plans are not optional.
• No need for separate Git DR and Perforce DR
solutions.
• Huge cost savings.
Simplified Disaster Recovery (DR)
perforce.com26 | © 2020 Perforce Software, Inc.
• Current: Use P4 to create a “Hybrid Workspace” with
files from both Classic Depot and Graph Depot (Git).
• Future: Extend Graph Depot support to P4V:
• Create and open hybrid workspaces and browse tree.
• Support read-only operations to view history, etc.
• Support simple edit/commit workflow.
• Goal: Helix Core users do not need to become
Git experts to read/modify code in Graph Depots!
Collaboration – Working with Combined Sources
perforce.com27 | © 2020 Perforce Software, Inc.
• Same code needs modification in
Perforce and Git:
• Helix Core stream/branch  Git branch.
• Git branch  Helix Core stream/branch.
• Git P4 based solution is possible.
Collaboration — Working with Native Tools on Shared
Code Across Combined Sources
GIT REPO P4 DEPOT
Git Branches P4 Streams/Branches
ToP4 (writeable) FromGit (read-only)
FromP4 (read-only) ToGit (writeable)
Sync from Git to Perforce
Sync from Perforce to Git
perforce.com28 | © 2020 Perforce Software, Inc.
• Reasons to split Git repos:
• Component-based development (CBD).
• Scalability limitations.
• Programming language barriers.
• GitLab, GitHub, Bitbucket, etc. are focused on end-to-end pipeline.
• Helix TeamHub is designed for scale.
• The future of Helix TeamHub:
• Clone/push/pull/tag a project which consists of many repositories
in a singular, atomic operation.
• More easily manage the explosion of Git repos that happen on
larger projects.
Managing Large Number of Repos, Projects, Groups, and Users
perforce.com29 | © 2020 Perforce Software, Inc.
• Helix TeamHub for Git code reviews:
• Including multi-repo code review
functionality for Git.
• Swarm for Helix Core code reviews.
• Future: Noodling on combined
dashboard across Helix TeamHub
and Helix Swarm.
Code Review Process

Más contenido relacionado

La actualidad más candente

Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Roberto Pérez Alcolea
 

La actualidad más candente (20)

Open Source Licensing: Types, Strategies and Compliance
Open Source Licensing: Types, Strategies and ComplianceOpen Source Licensing: Types, Strategies and Compliance
Open Source Licensing: Types, Strategies and Compliance
 
Is Trunk-based Development Easy in Game Development?
Is Trunk-based Development Easy in Game Development?Is Trunk-based Development Easy in Game Development?
Is Trunk-based Development Easy in Game Development?
 
State of Mainframe DevOps
State of Mainframe DevOpsState of Mainframe DevOps
State of Mainframe DevOps
 
Perforce helix git swarm jan 2016(pva1) meetup
Perforce helix git swarm jan 2016(pva1) meetupPerforce helix git swarm jan 2016(pva1) meetup
Perforce helix git swarm jan 2016(pva1) meetup
 
Best Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesBest Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for Companies
 
The Road to Continuous Delivery: Evolution Not Revolution 
The Road to Continuous Delivery: Evolution Not Revolution The Road to Continuous Delivery: Evolution Not Revolution 
The Road to Continuous Delivery: Evolution Not Revolution 
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOps
 
HP Helion European Webinar Series ,Webinar #3
HP Helion European Webinar Series ,Webinar #3 HP Helion European Webinar Series ,Webinar #3
HP Helion European Webinar Series ,Webinar #3
 
Code Management and Promotion (DDT) - Jason Cornell - ManageIQ Design Summit ...
Code Management and Promotion (DDT) - Jason Cornell - ManageIQ Design Summit ...Code Management and Promotion (DDT) - Jason Cornell - ManageIQ Design Summit ...
Code Management and Promotion (DDT) - Jason Cornell - ManageIQ Design Summit ...
 
Open Source and Standards Communities Coming Together to Solve Real World Pro...
Open Source and Standards Communities Coming Together to Solve Real World Pro...Open Source and Standards Communities Coming Together to Solve Real World Pro...
Open Source and Standards Communities Coming Together to Solve Real World Pro...
 
HP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pillHP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pill
 
Hardening Your CI/CD Pipelines with GitOps and Continuous Security
Hardening Your CI/CD Pipelines with GitOps and Continuous SecurityHardening Your CI/CD Pipelines with GitOps and Continuous Security
Hardening Your CI/CD Pipelines with GitOps and Continuous Security
 
Diffy gets enterprise grade
Diffy gets enterprise gradeDiffy gets enterprise grade
Diffy gets enterprise grade
 
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
 
Dev opscon survey summary 2013
Dev opscon survey summary 2013Dev opscon survey summary 2013
Dev opscon survey summary 2013
 
Building and Deploying Cloud Native Applications
Building and Deploying Cloud Native ApplicationsBuilding and Deploying Cloud Native Applications
Building and Deploying Cloud Native Applications
 
Releasing High Quality PHP Packages - ConFoo Montreal 2019
Releasing High Quality PHP Packages - ConFoo Montreal 2019Releasing High Quality PHP Packages - ConFoo Montreal 2019
Releasing High Quality PHP Packages - ConFoo Montreal 2019
 
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream ProjectsITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
 
Meetups - The Oracle Ace Way
Meetups - The Oracle Ace WayMeetups - The Oracle Ace Way
Meetups - The Oracle Ace Way
 
Continuous Delivery with a PaaS Application
Continuous Delivery with a PaaS ApplicationContinuous Delivery with a PaaS Application
Continuous Delivery with a PaaS Application
 

Similar a Better, Faster, Easier: How to Make Git Really Work in the Enterprise

Git Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
CollabNet
 
Sample Presentation.pptx
Sample Presentation.pptxSample Presentation.pptx
Sample Presentation.pptx
ssuser9aed211
 
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...
CollabNet
 

Similar a Better, Faster, Easier: How to Make Git Really Work in the Enterprise (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?
 
How to Work Efficiently in a Hybrid Git-Perforce Environment
How to Work Efficiently in a Hybrid Git-Perforce EnvironmentHow to Work Efficiently in a Hybrid Git-Perforce Environment
How to Work Efficiently in a Hybrid Git-Perforce Environment
 
Git Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Lyra Infosystems - GitLab Overview Deck 2020
Lyra Infosystems - GitLab Overview Deck 2020Lyra Infosystems - GitLab Overview Deck 2020
Lyra Infosystems - GitLab Overview Deck 2020
 
BUDDY White Paper
BUDDY White PaperBUDDY White Paper
BUDDY White Paper
 
Introducing GitSwarm: Pure Git with Globally Scalable DevOps
Introducing GitSwarm: Pure Git with Globally Scalable DevOpsIntroducing GitSwarm: Pure Git with Globally Scalable DevOps
Introducing GitSwarm: Pure Git with Globally Scalable DevOps
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
 
Git tech
Git techGit tech
Git tech
 
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
 
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
 
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWebinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
 
DevOps Training institute in Ameerpet
DevOps Training institute in AmeerpetDevOps Training institute in Ameerpet
DevOps Training institute in Ameerpet
 
Sample Presentation.pptx
Sample Presentation.pptxSample Presentation.pptx
Sample Presentation.pptx
 
Scaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsScaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOps
 
DevOps Challenges and Version Control
DevOps Challenges and Version ControlDevOps Challenges and Version Control
DevOps Challenges and Version Control
 
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...
 
Stack skills
Stack skillsStack skills
Stack skills
 
Arif_Shaik_CV
Arif_Shaik_CVArif_Shaik_CV
Arif_Shaik_CV
 
Docs as Code: Publishing Processes for API Experiences
Docs as Code: Publishing Processes for API ExperiencesDocs as Code: Publishing Processes for API Experiences
Docs as Code: Publishing Processes for API Experiences
 

Más de Perforce

Más de 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
 
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
 
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
 
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
 
Code Quality Management Best Practices
Code Quality Management Best Practices Code Quality Management Best Practices
Code Quality Management Best Practices
 
Scale Kanban Beyond Team Level
Scale Kanban Beyond Team Level Scale Kanban Beyond Team Level
Scale Kanban Beyond Team Level
 
Revealed: The State of Automotive Software Development in 2019
Revealed: The State of Automotive Software Development in 2019Revealed: The State of Automotive Software Development in 2019
Revealed: The State of Automotive Software Development in 2019
 

Último

%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 

Último (20)

WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 

Better, Faster, Easier: How to Make Git Really Work in the Enterprise

  • 1. © 2020 Perforce Software, Inc. Better, Faster, Easier: How to Make Git Really Work in the Enterprise
  • 2. perforce.com2 | © 2020 Perforce Software, Inc. Introductions Brad Hart CTO, VCS Perforce Chuck Gehman Technical Solution Specialist Perforce
  • 3. perforce.com3 | © 2020 Perforce Software, Inc. Better, Faster, Easier: How to Make Git Really Work in the Enterprise 1 2 3 4 Enterprise Challenges Ways to Solve These Problems How to Make Git Better, Faster, and Easier — with Perforce Q&A
  • 5. perforce.com5 | © 2020 Perforce Software, Inc. 3 Enterprise Challenges 1. You work with third party or outsourced development teams. 2. You use open source in your products. 3. You have different workflow needs for different teams.
  • 7. perforce.com7 | © 2020 Perforce Software, Inc. Challenge 1: You Work With Third Party or Outsourced Development Teams • Almost all large software companies outsource to: • Cut costs. • Focus on core value. • Increase capacity. • Third party and outsourcing challenges: • Developers are often less skilled – requires review process. • Very often only trained in one VCS – usually Git. • Too expensive to train teams in other VCS. • Members are often transient. • Need extra security to isolate what IP they can work on/see. • Integrating their code with larger codebase for build/release.
  • 8. perforce.com8 | © 2020 Perforce Software, Inc. Solution 1: Granular Access Controls, Compliance, and Governance • Third party code mastered in Helix Server. • Local performance for remote teams. Reduce risk and overhead of managing third party / outsourced teams. • Native Git code review. • Single source of truth. • Remote teams only can access what you allow. Outsource Dev Center Dynamic Git Proxy
  • 9. perforce.com9 | © 2020 Perforce Software, Inc. Challenge 2: You Use Open Source in Your Products • 35–50% of any given commercial product is open source. • Why OSS? • Reusable building blocks (database drivers, APIs, frameworks, etc.) • Why reinvent the wheel? • Large community support (often more developers than YOU have). • FREE! • Faster time to market. • Lets you focus on YOUR value add.
  • 10. perforce.com10 | © 2020 Perforce Software, Inc. PROPRIETARY CODE GitHub.com GitLab.com How do you: • Get the OSS code? • Keep it up to date? • Build it all together? • Work with mixed sources? • Prevent multiple different copies being used? Challenge 2: You Use Open Source in Your Products
  • 11. perforce.com11 | © 2020 Perforce Software, Inc. Solution 2: Bring Order to the Chaos With a Single Source of Truth • Helix4Git intelligently mirrors code from external sources. • Helix Server pulls it all together (single source of truth). • Helix workspaces can access Core AND Git code. • Native Git access to Git code. • The result: Simplified, unified build process for all code. Improve productivity while maintaining control.
  • 12. perforce.com12 | © 2020 Perforce Software, Inc. Challenge 3: You Have Different Workflow Needs For Different Teams • Mobile applications: • SIMPLE. • Small teams. • Git is fine. • Mobile OS software and hardware: • Complex & large scale. • Lots of interdependencies. • Regulatory requirements. • OEM requirements. • Requires enterprise-grade VCS.
  • 13. perforce.com13 | © 2020 Perforce Software, Inc. Solution 3: Flexible Workflows & Ability to Handle Code and Non-Code Assets Hardware and OS Engineers App Developers • Single source of truth. • Simplified DR. • Unified builds. • Flexibility (each team uses what is the best fit). Teams increase productivity by using the right tool — while the business maintains control.
  • 14. How to Make Git Better, Faster, and Easier — With Perforce
  • 15. perforce.com15 | © 2020 Perforce Software, Inc. How Perforce Makes Git Better, Faster, and Easier Helix4Git is a high performance Git server. Provides better performance than open source Git servers, especially with remote sites over WAN links. Developers use their existing front-end Git code management tools or use ours: Helix TeamHub. Helix TeamHub is a Git code management solution. Self-service project administration for team collaboration. Modern web UI with code review, wikis and Kanban boards. CI/CD workflows. Your favorite IDEs, including Visual Studio and IntelliJ The leading build runners like Jenkins Most popular tools like Jira and other issue management and ALM tools The most powerful Game and 3D engines like Unreal and Unity The fastest version control system (VCS). Security with granular permissions, enterprise authentication, secure replication. 10s of 1,000s of users, millions of transactions per day. Code and large binary objects. Central, single source of truth. Single Server
  • 16. perforce.com16 | © 2020 Perforce Software, Inc. Perforce customer base includes leading technology enterprises and 250+ of the Fortune 500 Global Customer Base in Technology 19 of the top 20 game development studios 9 of the top 10 semiconductor companies 9 of the top 10 automotive companies
  • 17. perforce.com17 | © 2020 Perforce Software, Inc. Summary Outsource Amazing Open Source Excellent Internal Teams Stellar
  • 18. Q&A
  • 20. perforce.com20 | © 2020 Perforce Software, Inc. • Optimized push AND pull. • No Git tool switching required. • Helix4Git mirrors data from preferred Git tool(s). Helix Versioning Engine Geographically Distributed Development
  • 21. perforce.com21 | © 2020 Perforce Software, Inc. • Git is not architected for large binaries. • Git LFS is not native Git. • Helix Core is architected for and natively supports large binaries. Large Binary File Management
  • 22. perforce.com22 | © 2020 Perforce Software, Inc. • Building products with assets housed from multiple sources is complex. • Helix Core/Helix4Git support hybrid workspaces with Perforce and Git assets combined together: • Build from one source of truth. • Build faster and easier. Managing the Complexity of Sources from More Than One System
  • 23. perforce.com23 | © 2020 Perforce Software, Inc. • Cumbersome to maintain a reliable and repeatable audit trail with multiple sources of truth. • Lack of native Git security and data protection. • Simplify by combining Git data with Helix Core in a single platform. Auditability/Traceability
  • 24. perforce.com24 | © 2020 Perforce Software, Inc. • Critical for building high-velocity development pipeline. • Shift left (find bugs earlier): • Using native Git from a CI server can be slow. Faster Builds = Faster Feedback
  • 25. perforce.com25 | © 2020 Perforce Software, Inc. • Disaster recovery (DR) plans are not optional. • No need for separate Git DR and Perforce DR solutions. • Huge cost savings. Simplified Disaster Recovery (DR)
  • 26. perforce.com26 | © 2020 Perforce Software, Inc. • Current: Use P4 to create a “Hybrid Workspace” with files from both Classic Depot and Graph Depot (Git). • Future: Extend Graph Depot support to P4V: • Create and open hybrid workspaces and browse tree. • Support read-only operations to view history, etc. • Support simple edit/commit workflow. • Goal: Helix Core users do not need to become Git experts to read/modify code in Graph Depots! Collaboration – Working with Combined Sources
  • 27. perforce.com27 | © 2020 Perforce Software, Inc. • Same code needs modification in Perforce and Git: • Helix Core stream/branch  Git branch. • Git branch  Helix Core stream/branch. • Git P4 based solution is possible. Collaboration — Working with Native Tools on Shared Code Across Combined Sources GIT REPO P4 DEPOT Git Branches P4 Streams/Branches ToP4 (writeable) FromGit (read-only) FromP4 (read-only) ToGit (writeable) Sync from Git to Perforce Sync from Perforce to Git
  • 28. perforce.com28 | © 2020 Perforce Software, Inc. • Reasons to split Git repos: • Component-based development (CBD). • Scalability limitations. • Programming language barriers. • GitLab, GitHub, Bitbucket, etc. are focused on end-to-end pipeline. • Helix TeamHub is designed for scale. • The future of Helix TeamHub: • Clone/push/pull/tag a project which consists of many repositories in a singular, atomic operation. • More easily manage the explosion of Git repos that happen on larger projects. Managing Large Number of Repos, Projects, Groups, and Users
  • 29. perforce.com29 | © 2020 Perforce Software, Inc. • Helix TeamHub for Git code reviews: • Including multi-repo code review functionality for Git. • Swarm for Helix Core code reviews. • Future: Noodling on combined dashboard across Helix TeamHub and Helix Swarm. Code Review Process

Notas del editor

  1. Read the metrics Here are some of the types of companies we work with, starting on the top line: Enterprise hardware manufacturers. Chip Makers, and makers of test gear and software Enterprise Software Game Development, including console makers Medical Device manufacturers Tier 1 Automotive Suppliers Automotive OEMs Cyber Security companies
  2. If your questions aren’t answered…
  3. Use Case 2: Faster builds as a result of P4 commands in your preferred build runner (NOT using Git commands) Use Case 2: Sync only the files you need, not the entire repo
  4. Use Case 4: If you insist on using Git LFS, H4G Supports Git LFS Locking
  5. Use Case #5: Mirror Git files into the Graph Depot and run it through static code analysis prior to a build
  6. Use Case #5: Mirror Git files into the Graph Depot and run it through static code analysis prior to a build
  7. Use Case 2: Faster builds as a result of P4 commands in your preferred build runner (NOT using Git commands) Use Case 2: Sync only the files you need, not the entire repo
  8. Programming language barriers: FE vs. BE (Javascript vs. C, React vs. Java, etc.)