Transcript
With premium Version Control, you now have the ability to create custom branches that stem off of Main in your development environment. With this expansion of capabilities, we should think about Main differently. Before, Main was the only branch in which you could make changes, so you would edit and deploy all from the same branch. Now, you have the ability to create custom branches for your work, which means you can preserve Main solely for deployment.
In general, preserving your uppermost branch for deployment can be a helpful practice for keeping your project organized. For any new change or feature you wish to explore, you can create custom branches for each effort. The deeper down this hierarchy of custom branches you go, the more focused your building and testing becomes. As you conclude your testing, you merge your changes back up the hierarchy until you have a polished version integrated with Main ready to deploy.
Think of the Main branch's new role as a launching pad. By the time the rocket reaches this point, there shouldn't be any more testing or experimentation to be done. It should just be ready to fly!
As you create these branches, the branch tree will provide visibility into how any given branch relates to other branches within the larger tree. This branch tree organizes all of your custom branches into parent-child relationships, with your Main branch as the trunk of that tree. When one branch stems off another, the newly created branch is referred to as the "child" while the original branch is referred to as the "parent".
Let's explore this example. Let's say you want to change a button in your app. To stay organized and not get in the way of any other work your team may be doing on this branch, you'll make a new custom branch for the purposes of updating that button. First, you'll make sure you're on the branch you want to stem off of, and then you'll select "Create a new branch" at the bottom of the Version Control side-panel. Then, it confirms that you're creating a new child branch off of the right parent, and gives you a chance to give your new branch a name and description.
Then, you're free to experiment with your changes, or even create savepoints as needed. When your done, you'll be ready to merge your changes!