Version Control: Difference between revisions
Hsymington (talk | contribs) m New section 'External Resources' and links. |
|||
(3 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
There are many Version Control software packages available for developers, both free and commercial. | There are many Version Control software packages available for developers, both free and commercial. | ||
==Why use Version Control?== | ==Why use Version Control?== | ||
Line 9: | Line 10: | ||
Version Control can also be integrated with Bug Tracking Software. For Sourcegear's Fortress Package includes both Version Control and Bug Tracking modules, so that files may be checked in against bugs. | Version Control can also be integrated with Bug Tracking Software. For Sourcegear's Fortress Package includes both Version Control and Bug Tracking modules, so that files may be checked in against bugs. | ||
==Concepts== | ==Concepts== | ||
Line 32: | Line 34: | ||
* [http://subclipse.tigris.org/ Eclipse Subversion client (Subclipse)] | * [http://subclipse.tigris.org/ Eclipse Subversion client (Subclipse)] | ||
* [http://www.polarion.org/index.php?page=overview&project=subversive Another Eclipse Subversion client (Subversive)] | * [http://www.polarion.org/index.php?page=overview&project=subversive Another Eclipse Subversion client (Subversive)] | ||
* [http://tortoisesvn.tigris.org/ Tortoise SVN] a Subversion Client that is integrated into Windows Explorer - '''very''' easy to use | |||
* [http://www.tortoisecvs.org/ Tortoise CVS] a CVS Client that is integrated into Windows Explorer | |||
==Version Control and DataFlex articles on this wiki== | |||
* [[Using GIT for Dataflex Development]] | |||
* [[Subversion]] | |||
==External Resources for Version Control and DataFlex== | |||
* [https://www.dataaccess.com/blog/systems-environments/using-git-with-dataflex-1596| Using Git with DataFlex - a Data Access blog] | |||
* [https://www.dataaccess.com/blog/systems-environments/the-case-for-distributed-source-control-1238| The case for distributed source control - a Data Access blog] | |||
* [https://https://git-scm.com/book/en/v2| A Git ebook] | |||
==Commercial Packages== | ==Commercial Packages== | ||
Line 39: | Line 57: | ||
[[Category: Development Tools]] | [[Category: Development Tools]] | ||
[[Category: Version Control]] |
Latest revision as of 11:40, 29 June 2020
Version Control, sometimes known as Revision Control or Source Control is the concept of managing multiple revisions of source files. By using version control, developers are able to track changes made to source code files, and where neccessary revert these files back to an older state.
There are many Version Control software packages available for developers, both free and commercial.
Why use Version Control?
Version Control has many uses. not only does it track changes to your source, but also becomes a backup of this information. Buy using version control you could effectively revert your entire workspace to represent the code of previous versions of your software.
Also, when working in a multi-developer environment each user exclusively check out files, as well as tracking changes made by other users. This can help limit confusion when two developers make changes to the same file at once.
Version Control can also be integrated with Bug Tracking Software. For Sourcegear's Fortress Package includes both Version Control and Bug Tracking modules, so that files may be checked in against bugs.
Concepts
Checking In and Out
In a version control system source files can be checked out, and then once changes have been made checked in. This concept is particularly useful when working in a multi-developer environment.
Branches and Branching
When working with version control, you work in what is called a Branch. Every version control has a Main Branch, which is the master set of source files.
Branching is the concept of making a copy of the source file(s) seperate from the main development branch. This is useful when working on a project and you don't want to include these changes until the project is complete. Once complete these files can the be merged back into the main branch.
Tagging and Labelling
Source code can be tagged or labelled, and thes tags can be used to access certain versions of file. For example, a tag could be set on each file as a version of your software is released. Should you need to obtain a copy of all source files as they were at the time the version was compiled, you could fetch all of the files tagged with the relevant value.
Free and Open Source Packages
There are many free and Open Source version control packages around. The main ones are CVS and Subversion . Both are extremely powerful, though arguably harder to use and setup than many commercial packages
- CVSNT - the Windows version of CVS
- Subversion
- CVS
- Eclipse CVS client
- Eclipse Subversion client (Subclipse)
- Another Eclipse Subversion client (Subversive)
- Tortoise SVN a Subversion Client that is integrated into Windows Explorer - very easy to use
- Tortoise CVS a CVS Client that is integrated into Windows Explorer
Version Control and DataFlex articles on this wiki
External Resources for Version Control and DataFlex
- Using Git with DataFlex - a Data Access blog
- The case for distributed source control - a Data Access blog
- A Git ebook
Commercial Packages
Commonly used commercial Version Control packages include Microsoft's Visual Sourcesafe and Sourcegear's Fortress and Vault Packages.
- Visual Sourcesafe
- Sourcegear - the home of Vault and Fortress