What do you need help with?

Version Control




An Overview of Version Control

You're almost there! This is the last step in the trial; if you are feeling up to experiencing even more that Flosum has to offer, feel free to continue onto Optional: Advanced Step 7, once you have completed Version Control.

Version control, also known as revision control or source control, is the management of changes to the source code and other collection of artifacts. Version control is essential for collaboration on multi-developer projects and it allows multiple projects to be run in parallel.

Version control happens at both the Repository and the Branches.

  • The Repository tab represents the master branch, also known as the trunk for version control. It is the one source of truth for your source code. We can see the most recent updates to the version control here: what changes were made, who made the change, and when the changes were made.
  • The Branches tab represents multiple streams of development where developers can collaborate with one or more members to stage development before the code is merged to the Repository.

Version control systems are most commonly run as stand-alone applications that require installation, integration and continued management. With Flosum, version control is fully embedded with no administrative overhead. It is ready for you to use with a few simple clicks. You do not have to learn any complex commands or install any plug-ins to use it.


Why Version Control

Why Flosum Version Control?

Flosum's version control is designed and developed with Salesforce and it's customers in mind. It's goal was to have the power of Git while making it extremely easy to use. Flosum Architecture: Flosum has an extensible architecture to solve the problems of release management in the Salesforce cloud. It is completely built on the force.com platform and has no external footprint. It has the same service level agreements (SLAs) as Salesforce, requires no special maintenance and comes with the same level of security and certification as Salesforce.

Key Benefits of Flosum's Version Control.

Built entirely on the force.com platform, Flosum's native implementation of version control provides a fully integrated and secure repository within Salesforce. The highlights that make the Flosum version control compelling are: Declarative version control with intuitive user experience: While Git has a powerful distributed architecture and provides a rich set of commands for version control, its adoption has been an uphill battle for the Salesforce developer community. The primary reason for this is a steep learning curve for every user with its complex architectural constructs, the problematic terminology of established source control concepts and an increased number of commands. Flosum's easy-to-use Click-not-Code design makes it really simple to administer and use by all developers.

Any Salesforce developer can learn and use Flosum's version control in just a few minutes! Deployments are easy and fast: The Flosum Repository is contained within Salesforce. Patch-manifests are easy to construct from the Repository and, once qualified to be working, can be reused to deploy to other orgs. This is a big differentiator over deployments with Git which is cumbersome and painful as it involves using a combination of the Force.com Migration Tool (FMT) or Eclipse and Ant build scripts to fetch from Git branches and deploy to target organizations. Robust architecture and rich feature set: Flosum's version control has an architecture that allows multiple developers to collaborate and manage multiple streams of development. 

Its integrated solution is robust and removes the complexities of installation, management and maintenance of external tools. It does not require additional skilled resources needed to orchestrate, administer and maintain a stable release for scaling the Git build infrastructure and release management activities. Flosum has all the key features that Git provides. Compliance and security: Flosum is built on Salesforce and, hence, adheres to the highest level of security and compliance that the Salesforce platform provides out of the box. All storage is maintained and managed within Salesforce unlike the external footprint needed for Git.

Reduced Total Cost of Ownership: Git requires a high total cost of ownership with its build servers, client machines, third-party plug-ins, installation, integration, on-going maintenance, dedicated personnel for integration and release management. With Flosum, owing to its integrated design, there is no additional capital and operational expense to manage the infrastructure. Flosum's version control integrates seamlessly with other features of Flosum, like Continuous Integration and Patch deployment, to provide a full and compelling Release Management solution.


Create a Branch

A branch isolates risk in the development of a feature or project. It allows multiple developers to share code before committing it to the Repository. Branches also allow the development of multiple releases in parallel.

In Flosum, branches work more like GIT rather than SVN. That is, when a new branch is created, the branch is empty. As the developers complete the development and testing of their code during the development cycle, the modified components are committed into the branch.

After the feature is fully developed, and the code is tested, the branch can be merged with the Repository. Flosum allows developers to keep multiple versions of the code at branch level.  


Creating Branches and Committing Changes

  1. Click on the Branches tab
  2. Create a new Branch Name and call it NewFeature
  3. Go back to snapshot SourceSnapshot that you created from the source organization
  4. Click on the Commit button for snapshot
  5. The branch Commit screen shows Components from the snapshot. Select the components (Visualforce page and Custom object) that you just created in the source organization.
  6. Click on Go To Commit
  7. On the branch Commit screen, select the branch name NewFeature
  8. In addition, the branch Commit screen shows three segments:
    • Conflict components
    • Safe to commit components
    • Components will not be merged

9. The selected components should be in the Safe to commit components section. Click Commit.

Result: This new branch has the components that you committed.

Note: In this (private) branch, you and your team members can keep your code isolated for this new feature. This is useful when the new feature development takes long. As you progress in the feature development, you can keep committing code in the private branch.


Commit Changes to the Repository

  1. Click on the Branches tab
  2. Select branch NewFeature
  3. Click on Commit (to Repository)
  4. Specify the Commit Name and Commit Description fields on the Repository Commit screen. They have defaulted from the Branch name and Branch description
  5. In addition, the branch Commit screen shows three segments:
    • Conflict components
    • Safe to commit components
    • Components will not be merged
  6. The branch components should be in the Safe to commit components section. Click Commit

Observe: This Repository tab shows the components that you just committed. Their version should be 1.00.

That's it! You've completed the trial. Congratulations! We knew you could do it.


Print Friendly and PDF
Was this article helpful?
2 out of 2 found this helpful