18
Introducing Helix: A New and Better DVCS

DevTalk: Introducing Helix- A New And Better DVCS

Embed Size (px)

Citation preview

Introducing Helix:A New and Better DVCS

Introducing Helix: A New and Better DVCS

Stephanie Turner

Perforce Software

John Williston

Perforce Software

Introducing Helix: A New and Better DVCS

Agenda

Why Helix? Getting Started Working Solo Working Teams Q&A

Introducing Helix: A New and Better DVCS

Why Helix?

Disconnected Local speed Clean history No limits

Share easily Flexible clones Total security Threat detection

Introducing Helix: A New and Better DVCS

Getting Started - Installation

DVCS features available as of 2015.1 Install Helix components on client workstations:• Install the Helix versioning engine (P4D)

• Non-Windows users also install the command-line client (P4)

Install/update the Helix Versioning Engine on any shared server(s) as well

Introducing Helix: A New and Better DVCS

Getting Started - Configuration

Don’t panic: it’s easy DVCS features disabled by default Local P4 variables matter

Introducing Helix: A New and Better DVCS

Demo Details

Windows 8.1 client machine Windows 2012 R2 server VM Latest Helix software on both

Introducing Helix: A New and Better DVCS

Demo Video

Introducing Helix: A New and Better DVCS

Standalone Project

P4 init in empty folder• Case sensitivity from P4PORT variable

Show/explain files:• .p4settings – Helix configuration variables

• .p4ignore – improves S/N ratio

• .p4root – hidden folder just like .git/.hg

Introducing Helix: A New and Better DVCS

Solo Workflow

Show files created for a simple C++ app P4 status shows what work we’ve done P4 rec (alias) prepares it all for submit P4 submit saves all our work as a revision Delete file, make a change P4 rec + submit takes care of it all

Introducing Helix: A New and Better DVCS

Ignore

Build the project Show all the “noise” files Copy the new ignore file See how they disappear Explain how to add and update the ignore file

Introducing Helix: A New and Better DVCS

Cleanup – Bad Description

Make a change with a bad description Use p4 unsubmit //…/file#head Use resubmit –i and fix the description, then m Call out P4EDITOR variable is invoking Notepad++ Problem solved!

Introducing Helix: A New and Better DVCS

Cleanup – Squashing Commits

Delete the useless line from main.cpp, then fix the spelling mistake (p4 rec / p4 submit for each)

Now p4 unsubmit “//…@>=firstchangelist” p4 resubmit –i a to squash, c to change description, m to submit

Introducing Helix: A New and Better DVCS

Share Your Work

What happens when your project takes off? P4 push is the command to send to a shared server It fails because a new, local repo knows no server Fix it by create a remote specification It fails now because the server isn’t configured Configure the server for DVCS operations Push the code successfully, p4v -p hve:1666 -u jwilliston

Introducing Helix: A New and Better DVCS

Working Team

• Clone easily: p4 -d clone1 clone -p hve:1666 -f //depot/newProject/...

• Unlike other systems, Helix supports narrow clones

• Shallow clone: p4 -d clone1 clone -p hve:1666 –m 1 -f //depot/newProject/...

• Show lightweight branching: p4 switch –c dev

• Merge, resolve, submit, and push back to shared server

• Explain how other users get your work through p4 fetch

• Wrap up with assurance about big files

Introducing Helix: A New and Better DVCS

Conclusion

Advanced DVCS features Enterprise ready No limits DVCS for everyone

Introducing Helix: A New and Better DVCS

Q&A

Learn more at perforce.com/helix

John Williston: [email protected]

Twitter:@p4jbw

Introducing Helix: A New and Better DVCS