Version Control is a system or tool that captures the changes to a source code element: file, folder, image or binary.
If you did not create a backup copy before you saved changes and you decide you need to revert back to the original, you need to manually recreate the original document from memory.
Version Control Explained
If you have ever worked with a group of developers on a project not using source control, you know the frustration.
It can be painful trying to coordinate file swapping between project team members.
All developers worth their salt have used revision control tools.
Software Configuration Management Tools provide many benefits in addition to providing the ability to have an unlimited number of people working on a specific file at the same time.
You can instantly browse previous commits to your repository and revert to earlier versions if something happens.
However, there is a little more to it than just using a version control tool.
Finding the tools that fits your organization greatly helps in success of implementing a source control system.
Here is a list of some of the more widely used SCM Tools
The difference between wisely and foolishly administering code can greatly impact the success of any development organization.
There have been software development organizations who have had catastrophic loss of their code through a hardware failure or data corruption, only to suffer little to no down-time because of proper backups and precautions were followed.
There have been known cases where companies encountered weeks of down time due to source administration ignorance and not following code administration best practice.
Following standard Source Code Best Practices is the only way to ensure a healthy and productive development environment.
Software Configuration Management Best Practices
Version Control Vocabulary
Add: Inputting a new element(file, folder or binary) into the repository
Branch[es]: Separate version of the same element(file, folder or binary)
Check In: Creates a new revision of an element in the repository
Check Out: Populates workspace with editable version of a file, folder or binary
Client: Developer computer connecting to the repository
Conflict: When changes from different developers changing the same file conflict with each other
Diff: Is used to see the difference between different versions of the same file
Element: File, folder, binary, or any other item that has been added to a repo
Head Revision: The latest revision of the file
Label: Is a tag you attach to specific set of files that require identification
Merging: Is the process of applying changes from two different versions of the same file[s]
Repository: Is the database that stores the source code and the versioning meta-data
Revision: Is the version of the specific file, directory or binary
Server: Is where the source code repositories reside
Trunk: Is the main branch from where the other branches originate
Workspace: Is the local copy of the code where the developer makes changes before checking in those files
Version Control Software
Version Control Software is an overview of the features and concepts of a few of the more commonly used Open Source SCM Tools, Subversion, Bazaar and Git.
Software Configuration Management Tools
SCM Tools is a list of the more popularly used Software Configuration Management Tools.
The plan is compile an exhaustive list of tools and rate them according to their usability.
Software Configuration Management Tool Reviews
Please share your Software Configuration Management Tool experiences and reviews!
Read what other think of their Software Configuration Management Tools.
Version Control Software Table of Contents
Software Version Control Software Version Control is a software system designed to track changes to individual files and directories. It's primary function is to facilitate, track and help organize changes to constantly evolving software systems.
Source Code Source Code is the intellectual property of an organization. Understanding and properly protecting this valuable asset is one of Software Configuration Management's highest priority.
Source Code Administration Source Code Administration is an important aspect of SCM. Ensuring wise and effective administration to your companies source code is vital to your organization's success.
Source Code Branching Most software projects will invariably require some efforts to be done in parallel. Large software projects require many roles to be filled, developers, architects, builders, testers and managers.
Software Baseline The goal of the baseline is to uniquely identify each version of a software component or application, and to facilitate detection and correction of configuration errors.
Source Code Evaluation In Software Configuration Management, one of the most common asked questions is what SCM source code tools should I use. The answer is, it depends on your source code evaluation criteria.
Source Control Source Control is a system or tool that versions the changes to a source code file. This is beneficial for many reasons, but the most fundamental reason is that it allows you to track changes on a per file basis. The typical tools used for versioning are called version control tools, software configuration management tools, or content management tools.
Version Control Version Control is a system or tool that captures the changes to a source code element: file, folder, image or binary. This is beneficial for many reasons, but the most fundamental reason is it allows you to track changes on a per file basis.
Version Control Software Version Control Software is an overview of the features and concepts of a few of the more commonly used Open Source SCM Tools, Subversion, Bazaar and Git.
SCMWise Home SCMWise is dedicated to Software Configuration Management. This site is a central repository for the collection of best practices, processes, methodologies and tools that surround SCM.
This is a collection of
Salary Surveys from
SCMWise Configuration Spec