35
Perforce Helix GitSwarm Enterprise Git Ecosystem ds data systems

Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

  • Upload
    others

  • View
    26

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

Perforce Helix GitSwarm

Enterprise Git Ecosystem

ds data systems

Page 2: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

2

Git is a Very Popular 10-Year-Old

— 2015 Stack Overflow Developer Survey

69.3%

of developers use Git

2005 2015

Page 3: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

3

But It Poses Challenges to the Enterprise

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

Page 4: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

4

7 DEVOPS PRACTICES FOR OUTSTANDING RESULTS (1)

“DevOps is a software development methodology that emphasizes communication, collaboration, integration

and automation”

Version control of all production artifacts • Both Dev and Ops should use version control for everything and share the same single source of

truth.

Continuous integration and deployment • Check in code every day and check into the trunk every day, as opposed to hanging onto private

code branches and integrating only at the end of the release.

Automated acceptance testing • Stop the line not only when the build breaks but also when something breaks in an automated

user test, an integration test, or a system test. This step keeps things in an alwaysdeployable state.

DevOps

Page 5: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

5

7 DEVOPS PRACTICES FOR OUTSTANDING RESULTS (2)

Peer review of production changes • Use peer reviews for better quality based on their familiarity, shared goals, and mutual

accountability, as opposed to external change approval, such as a change advisory board.

High trust culture • This outcome and practice result from a single source of truth, peer reviews, and shared goals.

Proactive monitoring of the production environment • Monitor and communicate across the teams so everyone can see, understand, and affect end

results and customer utilization.

Win-win relationship (and outcomes) between Dev and Ops • This approach counters the learned behavior that deployments hurt. By deploying code into

production every day, you can change lives in Operations. Deployments don’t have to be done at midnight on Friday with Ops working all weekend to get things running. When Ops employees are working the same hours as Dev, there is a sense of teamwork and joint accomplishment.

DevOps

Page 6: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

6

Inefficient Product Delivery

Poor visibility between teams introduce friction and design errors

Poor component reuse results in higher production cost

More delays, less efficient product delivery

Less secure

Increased risk of quality issues

DevOps

Page 7: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

7

Recent Gartner market guide

“ “

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

Page 8: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

8

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

Page 9: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

9 PERFORCE CONFIDENTIAL: NOT FOR DISTRIBUTION

More performance More uptime More control

Better coordination Binaries

Large files Protect IP

Regulations/audit

More code More frequently More freedom More flexibility

All text Small files

Code anywhere Local repos

Perforce Helix

Serves developers Serves operations

Coordinate Development & Operations at Scale

Page 10: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

10

GitSwarm: Integrated Git Management

Based on GitLab CE

Self-service repos

Merge requests

Permissions

Issue tracking, etc.

Page 11: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

11

Mirrored to the Helix Versioning Engine

Automatic bidirectional mirroring with Helix servers

Helix enforces security, down to the file level if needed

Immutable content for audit trails, regulated industries, etc.

Support for Git LFS that works for DevOps

Page 12: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

12

Work Locally, Scale Globally

Distributed environment for developers

Git experience and workflow equivalent to well known tools

Single source of truth

Perforce reliability and stability protecting your assets

Helix GitSwarm

Page 13: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

13

Distributed Team Support

Each developer team working within its own GitSwarm ecosystem

Each team has controlled access to IP managed within Helix core

Team can access only what they need to do their job

Page 14: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

14 PERFORCE CONFIDENTIAL: NOT FOR DISTRIBUTION

Narrow Cloning

Art

Code

Core

iOS

Win

Tests

Helix Monorepo

Narrow cloning with Git

Git-sized slices of Helix monorepo – choose the folders/files you need

Remap content as needed

Optional shallow-cloning – restrict historical revisions

Mirror content from local Git repo to the master monorepo

Code

Core

iOS

Tests

Jill’s Git repo

John’s Git repo

Code

Core

Win

Tests

Page 15: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

15

GitSwarm Enterprise Edition

Extends LDAP support

Share projects between groups

Git hooks

Two factor authentication (LDAP)

Jira integration

Import from GitHub Enterprise

Available as an add-on option

Page 16: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

16

GitSwarm EE – LDAP Sync

Page 17: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

17

GitSwarm EE – Sharing with Groups

Page 18: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

18

GitSwarm EE – Git Hooks

Page 19: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

19

GitSwarm EE – Two Factor Authentication

Page 20: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

20

Optional Desktop Client: Tower

Beta support for GitSwarm

Page 21: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

Helix GitSwarm. The product. Demo, Video, Next Steps

Page 22: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

22

GitSwarm Comparisons

GitLab

• GitSwarm builds on GitLab to add the unique capabilities of Helix

GitHub/GitHub Enterprise

• Functional equivalence of GitHub with power of Helix and flexible on premise deployment options

Atlassian BitBucket

• BitBucket needs add-ins to provide many GitSwarm features and doesn’t benefit from the scale and security capabilities of Helix

Page 23: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

23

Create and Import

Create your own private sandbox for experiments

Import from GitHub, GitLab, etc., even any repo by its URL

Control visibility and permissions easily

Page 24: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

24

Mirror with Helix

Import any project available from Helix

Mirrors bi-directionally

Seamless automated content updates

Page 25: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

25

Project Landing Page

Great for getting-started docs and links

Star for favorites

Download files

Simple Git commands to clone via SSH/HTTP

Page 26: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

26

All Projects Activity Feed

See what’s happening

Tweet your work

Filter the events

Page 27: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

27

Milestones

Linked to issues

Linked to merge requests

Track overarching goals

Progress at a glance

Page 28: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

28

Collaborative Workflow

Merge requests allow discussion and review

Rework as needed

Accept/merge when good

Page 29: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

29

Review Changes

Side by side or inline

Highlights every change

Easy file viewer

Page 30: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

30

Files Browser

Navigate repo structure

Examine files and folders

Download single or bulk

Page 31: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

31

View Branches

Easy to visualize

Clarify per-task branches

See open work

Drill down on commits

Labels in history

Page 32: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

32

Contributors Graph

Activity over time

Recognize top contributors

Drill down into spikes

Page 33: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

33

Commit Statistics

Statistics by branch

Totals and averages

Monthly / weekly / hourly breakdown of activity

Plan around key hours for backups etc.

Page 34: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

34

Project Activity Feed

See who’s doing what

Drill down into items

Filter by event type

RSS feed available

Page 35: Perforce Helix GitSwarm - Meetup Helix GitSwarm...Perforce Helix Serves developers Serves operations Coordinate Development & Operations at Scale 10 GitSwarm: Integrated Git Management

Contact Spain&Portugal [email protected] / +34 91 579 66 46