Streamline Branching & Merging With Streams

Perforce Streams allows you to design and automate development and release processes in Helix Core –– version control from Perforce. It helps guide teams through branching and merging with no external tools or scripts required. 

 

    So Why Do You Need Streams?

    Let’s start by asking –– if you could ship 20% faster, what would that mean for your business?

    The #1 obstacle for big teams working on even bigger projects is waiting right before the release to test everything together. And if you have thousands of contributors all branching and merging at the same time, this process gets complicated, fast.

    To avoid merge complications, developers often branch less. Companies spend time scripting solutions to help, and waste time documenting practices using an external tool. But there is an easier way.

      Streams Helps You

      industry-technology

      Branch more

      solutions-integration

      Merge easier

      icon-benefits-desktop-experience

      Easily setup workspaces

      Switch between codelines

      icon-benefit-refresh

      Reuse code

      industry-energy

      Accelerate pipelines

      Conquer Challenges & Gain Velocity With Perforce Streams

      Streams makes life easier for everyone on your team. You can visualize how code flows, even if a project has a lot of dependencies, files, binaries, contributors, and changes.

      Develop Your Way

      Looking at modernizing your monolith? Wanting to move to microservices or component based development? Perforce Streams is flexible enough to work the way your teams do.

      It's easy to separate out Streams to work on components and modules. And it automatically keeps track of your dependencies. This allows you to more easily test all the code together, ensuring that you ship high-quality code, on time.

      Flexible Branching

      Stabilize Your Code

      Streams organizes thousands of codelines. It helps developers branch more, and avoid painful merges. The built-in merge-down, copy-up best practice in Streams prevents errors. This keeps your mature code stable, while immature code can be developed and tested separate from the mainline.

      Enterprise Stability

      Visualize Development

      Streams lets your team know where and how to branch. Everyone can see:

      • Relationships between code.
      • How change is propagated between streams.
      • Any pending integrations that need to be incorporated.

      This eliminates extra work needed to define branches and manage integrations. No more wikis. No more scripts. Your entire team can quickly see what work has been completed, and the changes that still need to be integrated.

      Visual Streams

      Find Defects Early

      Finding defects before a product ships saves dollars. When defects sneak into finished code, it can choke your velocity. Now you are spending time fixing problems in a product rather than developing new functionality

      So how do you get ahead of this? Test more. Branch more. This is easy with Streams.

      Built-In Best Practices

      Visual Tools + Commandline Support

      Perforce Streams is available in Helix Visual Client (P4V). It works on Windows, Mac OS, and Linux. Streams is also accessible right from the commandline.

      Streams also supports plugins for our most popular IDEs, integration tools, and APIs.

      Perforce Streams is available in Helix Visual Client (P4V). It works on Windows, Mac OS, and Linux

      Perforce Streams Keeps it Simple

      Perforce Streams helps software teams keep things simple. Streams easily organizes changes throughout your product lifecycle.

      Perforce Streams Matches Your Workflow

      Perforce Streams is flexible and works how you do. 

      Mainline Stream

      Keep your codeline stable and organized using a mainline stream. Child development streams can be copied up into the mainline. Then code can be pushed out to a release stream.

      Mainline Stream
      Release Stream

      Release Streams

      Release streams are less flexible than the parent mainline stream. They are designed to be stable and are used for bug fixing and release maintenance.

        Development Streams

        Used for long-term projects and major new features, development streams are where your teams get things done.

        Development Stream
        Task Streams

        Task Streams

        Perforce task streams are lightweight, short-lived branches. They are designed for developers work on a small portion of a full project branch.

        So, developers can work privately and switch contexts quickly. When finished, only the metadata for the changed files (along with any changes) gets merged back into the stream.

        Virtual Streams

        Serving as a workspace filter, virtual streams allow teams to focus on a portion of the codeline.  This is incredibly valuable for enterprises that have hundreds of thousands of files in their code base. 

        You can use them to access to certain files from the parent stream. So, if you only need to work on two files in a project, you don’t need to have the entire stream in a workspace.

        Virtual Streams
        Streams Adoption Guide

        Discover Superior Branching

        Helix Core’s powerful and automated branching strategy –– Perforce Streams –– automates and simplifies workflows based on best practices. Learn how to manage concurrent development while eliminating obstacles.

        See Perforce Streams in Action

        For Perforce Streams, seeing is believing. Take a guided tour of the graphical tools within Helix Core. Give your development teams greater confidence and accelerate your pipeline.

         

        Time-Lapse View

         

        Revision Graph

        Ship Faster With Perforce Streams

        Get Helix Core and gain instant access to the fastest, most secure development platform.

        Streams gives you automated and streamlined branching and merging –– free for teams up to 5 users.

        Discover More

        Sign up for our next demo.

        Get in Touch

        Have questions? We're here to help!