Perforce Innovations Showcase
Transcript of Perforce Innovations Showcase
Product Innovation Showcase
Product Innovation ShowcaseColleen Kulhanek
Vice President of Marketing
3
Great traction on our enterprise-grade Git solution
Large deployments of our native DVCS
Significant performance improvements in our core
10x growth in code review usage
Helix in simplified Chinese, Japanese, Korean
Significant accomplishments over past 18 months
4
Key market trends and insights from you
Unified experience is key
Teams are distributed Cloud usage on the rise Repository sizes on the rise
Developers prefer DVCS
Areas of focus for2016-17
6
Native support for Git in our core
One Product - HelixFrom… To…
Swarm Helix CloudApplicationInsights
SDKs(in C/C++, Java,
Ruby …)Git Fusion
Helix Versioning Engine
Helix UI(same in cloud and on-prem)
Web Services APIs and SDKs
Helix Core (P4 and Git)
Helix Web App
Desktop Apps
3rd Party Apps
GitSwarm
Apps
Versioning
Analytics Security
Notification
GitWeb Services Platform
PerformanceScalability
Distributed workflowsFederation
SecurityAudit logsMono repo
On premise/CloudHelix Core
Easier to integrate via Web Services
John WillistonProduct Marketing ManagerHelix
Web App
Desktop Apps
3rd Party Apps
GitSwarm
Charles McLouthDirector of Technical Sales
Versioning
Analytics Security
Notification
Git
PerformanceScalability
Distributed workflowsFederation
SecurityAudit logsMono repo
On premise/Cloud
Helix CoreCharles McLouth
Director of Technical Sales
Easier to integrate via Web Services
Helix Web App
Desktop Apps
3rd Party Apps
GitSwarm
Apps
Versioning
Analytics Security
Notification
GitWeb Services Platform
PerformanceScalability
Distributed workflowsFederation
SecurityAudit logsMono repo
On premise/CloudHelix Core
Two Years in Review
Administration
Performance
Streams
UserProductivity
DVCS
13
Native LDAP for Authentication
LDAP / Active Directory
Administration
14
LDAP Group Mirroring Administration
LDAP / Active Directory
P4-Developers P4-Developers
15
LDAP Group Mirroring
Protections:write group P4-Developers * //P4/...super group p4super * //...
Administration
Any command can fire a trigger> Edit > add > delete > etc
Command Triggers Administration
17
Command Triggers Administration
p4 obliterate //…
Sorry not allowed!
35%Compressed
ImprovedPerformance
ReducedFragmentation
Performance
db.have
Administration
19
Parallel Sync
p4 sync
Performance
20
Parallel Sync Performance
p4 sync
21
Parallel Submit
p4 submit
Performance
22
Parallel Submit
p4 submit
Performance
23
Read Only Client
p4 client builder
db.have builder.have
Performance
24
Read Only Client
p4 sync //builder/…
db.have builder.have
Performance
25
Read Only Client
p4 client –d builder
db.have builder.have
Performance
26
New Path types• Import @ Change• Writeable Imports
Stream Spec is Transactional• Can be staged and submitted with code
Streams Features Streams
Create an alias for a single command or a chain of commands
Introducing Aliases Productivity
I’m used to git/subversion
blame
checkout
pull
purge
stash-list
annotate
sync
fetch –r origin
clean
changes –s shelved
Git / SVN Emulation Productivity
Complex Commands
Copyup $(b)
Complex Commands
switch dev && merge --from $(b) && resolve -as && submit -d "Copied up from $(b)" && push
Productivity
30
Clone projects to local servers Work disconnected Fetch changes from shared server Independent local branches Push changes to shared server
Native Workflow DVCS
31
Extended Federation
Push
Fetch
Fetch
Push
Server AServer B
Server C
DVCS
32
Shallow Clone
clone –m 2
DVCS
#1
#2
#3
#4
#3
#4#2
#3
33
Narrow Clone
ArtCode
CoreiOSWin
Tests
Shared HelixCode
CoreiOS
Tests
Jill’sHelix repo
CodeCoreWin
Tests
John’sHelix repo
DVCS
34
Remote File Locking
foo.jpg
p4 edit –remote foo.jpg
DVCS
35
Share Local Shelves
Shelf# 666
p4 push -r –s 555
DVCS
What’s Coming
Give Protection permissions to non-super users
Limited to portions of depot
Administration
38
Access Control Delegation Administration
TeamMembers
Super grants admin access to depot path://helix/united/…
For user TeamLeadSuper
Team Lead grants write access to depot path://helix/united/…
For group TeamMembersTeamLead
Git is great, but… Maximum practical repository size
- Leading to Git sprawl (lots of repos) Too complex for some contributors Raises security concerns Weak visibility across the entire pipeline DevOps challenges for continuous delivery Destructible history can be a problem
Git
Git Data model idealfor single project
Git
What if a Git repository was just a Helix Depot?
Git
42
GraphDepot
Hierarchical Depot
HELIX MASTER REPOSITORY
Graph Depot Scalable Back End for Git
Git is great, but better with Helix
Maximum practical repository size - Leading to Git sprawl (lots of repos)
Too complex for some contributors Raises security concerns Weak visibility across the entire pipeline DevOps challenges for continuous delivery Destructible history can be a problem
Scalable Back End for Git
Web Services
Helix Web App
Desktop Apps
3rd Party Apps
GitSwarm
Apps
Versioning
Analytics Security
Notification
GitWeb Services Platform
PerformanceScalability
Distributed workflowsFederation
SecurityAudit logsMono repo
On premise/CloudHelix Core
45
Web services provide a standard means of interoperating between software applications running on a variety of platforms and frameworks.
Web services can be combined in a loosely coupled way to achieve complex operations.
Web Services Why Web Services?
46
Helix Web Services provide the building blocks• Well defined interfaces• Consistent data representation• Common Helix commands
Providing more complex capabilities• Project Administration• Project Metrics• Code Review
Web Services Why Web Services?
Recap
Available NowDownload Today! Helix Server 2016.1
- ReadOnly clients, db.have - Remote filelock, push to shelf- Command aliasing
What’s Coming WebServices
- Basic and Administrative commands GraphDepot
- Scalable Git Management
Helix ClientsJohn Williston
Product Marketing Manager / Developer Evangelist
Clients and Apps
Helix Web App
Desktop Apps
3rd Party Apps
GitSwarm
Apps
Versioning
Analytics Security
Notification
GitWeb Services Platform
PerformanceScalability
Distributed workflowsFederation
SecurityAudit logsMono repo
On premise/CloudHelix Core
Helix Clients
Swarm GitSwarm
SwarmCode Review and Collaboration
54
Swarm New Customers
New Features
Your own review groups Batched email notifications Enhanced search capabilities Improved differences viewing Download project content as a zip archive
Swarm
56
Review Groups Swarm
Batched Email
Delay Digest
Swarm
Enhanced Search Projects Users Content
Swarm
Improved Differencing
Whitespace
Swarm
Download Content
One Button Folders Files
Swarm
61
Federated Deployment Swarm
62
Support for Japanese, Korean, and Chinese
New Languages Swarm
Swarm – What’s Coming
Evolve Beyond review Unified UX One Surface
Swarm
Create Create Import Invite
Swarm
Administer Manage Assign Delegate
Swarm
Content Browse Drag/drop Create
Swarm
DVCS Workflow Copy & clone Workflow Native Git
Swarm
69
Multiple Servers Swarm
70
Phased Releases
New UIAdmin
Multi-server
Swarm
DVCS
GitSwarm
72
Distributed development Native Git experience & tools Built from GitLab
Newest Component
Bidirectional Helix mirroring Single source of truth All the Helix –ilities
GitSwarm
73
Hybrid Needed
““
GitSwarm
Enterprise-grade management of Git that offers important aspects of a DVCS — good merging, the ability to work offline and good collaboration — along with the security and central repository of a CVCS, will resolve most remaining concerns about the use of the DVCS model.
— Gartner, Inc. Market Guide for Software Change and Configuration Management
74
Hybrid Workflows• Distributed & Centralized Version control,
code reviews, simple file sharing• Happy developers & contributors
Every File• Efficiently handles large, often binary, data
DevOps Stay Happy & Productive• A mainline source for all builds even with
distributed development
All IP Safe & Secure • Granular permissions, theft risk monitoring
Perforce Helix
CONTRIBUTORS
CONSUMERS
GitSwarm
Notable Features
Simple project management Narrow cloning with Git Merge-request workflow Flexible security and administration
GitSwarm
Create Project
Scope Import Mirror
GitSwarm
77
Narrow Cloning
ArtCode
CoreiOSWin
Tests
Shared Helix Code
CoreiOS
Tests
Jill’sGit repo
CodeCoreWin
Tests
John’sGit repo
GitSwarm
Narrow cloning with Git Git-sized slices of a huge
Helix monorepo Remap content as needed Shallow-cloning support All pushed work is mirrored GitSwarm picks up others’
contributions
Narrow Cloning Branches Paths Go!
GitSwarm
Merge Requests
Deliver Review Collaborate Incorporate
GitSwarm
Flexible Security
Groups Roles Manage
GitSwarm
81
Six months since market launch Five product releases in that time Hundreds of GitSwarm users
Rapid Adoption GitSwarm
GitSwarm – What’s Coming
Centralized Auth
User: Password:
GitSwarm
AD/LDAP
84
Git LFS
Shared Helix
John’sGit repo
GitSwarm
85
Graph Depot GitSwarm
GraphDepot
Hierarchical Depot
HELIX MASTER REPOSITORY Significant performance gains
Reduced ownership cost
86
Phased Releases
Central Authentication
Central Authorization
GitSwarm
Git LFS and Graph Depot
Recap
Available NowDownload Today! Swarm 2016.1
- Review groups, batched email, etc. GitSwarm 2016.1
- Narrow cloning UI
What’s Coming Swarm
- One single-UX app for many stakeholders GitSwarm
- Central auth, Git LFS, graph depot