Version Control



Version control refers to the practice of naming and numbering data files (typically but not exclusively computer program source code) and storing those files for easy retrieval and management. To this end, version control software has evolved as a key infrastructure component of software development organizations. By placing source code under the management of version control software, developers, release engineers and team leads can keep track of changes to a software product over time, archive source code for already released products, and in some cases, recreate the software configuration that was used to create a particular software release. Version control software products range in sophistication from basic products, such as the open source CVS and Subversion, to more sophisticated products, that provide advanced software configuration management functionality.

AccuRev SCM includes an advanced version control solution that delivers both core version control functionality plus sophisticated graphical configuration and codeline management. The AccuRev stream architecture enables developers to safely version in-progress code and store it in private workspaces using the keep operation, or share it with other team members using the promote operation. This two-step check-in model enables parallel development of features by letting development teams build features or entire codelines independently. Merging of changes between codelines is simple and supported by the Change Palette, a robust visual tool that reduces the amount of time spent on analyzing and resolving merge conditions. This facilitates the best practice of integrating and merging changes frequently. The AccuRev TimeSafe Architecture ensures that the full version history of all files and configurations is absolutely reproducible at any time, enabling organizations to satisfy internal corporate and external regulatory governance and compliance requirements. All of this functionality is consolidated in the visual StreamBrowser, a powerful platform-independent console for analyzing and managing configurations and the software development process itself.

Version Control Screenshot

Key features

  • Stream-based version control managed by the graphical StreamBrowser
  • Version Browser for exploring and managing file versions
  • Change Palette for analyzing and performing merges
  • Enables release engineers to manage complex release configurations
  • All versions and configurations are TimeSafe for absolute reproducibility