|
Branching, in revision control and software configuration management, is the duplication of an object under revision control (such as a source code file, or a directory tree) in such a way that the newly created object has initially the same contents as the version branched off from, and (more importantly) development (creation of new versions) can happen in parallel along both branches. Branching, in organic chemistry, is when a hydrogen on a polymer is replaced by another chain of that polymer, that is, a polymer that at some point looks like: / - - - - - - - < - - - In linguistics, branching refers to the way in which a language constructs phrases with a head (or nucleus) and modifiers (or...
Revision control (also known as version control (system) (VCS), source control or (source) code management (SCM)) is the management of multiple revisions of the same unit of information. ...
Software Configuration Management (SCM) is part of configuration management (CM). ...
Branching also generally implies the ability to later merge the differences accrued to an object on a branch back onto its parent branch. Often the changes are merged back to the trunk (even if this is not the parent branch). A branch not intended to be merged (e.g. because it has been relicensed under an incompatible license by a third party, or it attempts to serve a different purpose) is usually called a fork. The trunk refers to the unnamed branch (version) of a file tree under revision control. ...
In software engineering, a project fork or branch happens when a developer (or a group of them) takes a copy of source code from one software package and starts to independently develop a new package. ...
Branches are created for various reasons. These are covered in depth in the paper "Streamed Lines: Branching Patterns for Parallel Software Development" by Brad Appleton, Stephen Berczuk, Ralph Cabrera, and Robert Orenstein. Branches are also known as trees. In some distributed revision control systems, such as Darcs, there is no distinction made between repositories and branches - so in these systems, fetching a copy of a repository is equivalent to branching. Revision control (also known as version control (system) (VCS), source control or (source) code management (SCM)) is the management of multiple revisions of the same unit of information. ...
Darcs is a distributed revision control system by David Roundy designed to replace the centralized CVS. Several noticeable differences in the design aim for simple use and powerful features. ...
The branch that a new branch has been forked from is sometimes called the upstream branch, or simply upstream - especially if the branches are maintained by different organisations or individuals.
Development branch A development branch or development tree of a piece of software is a version that is under development, and has not yet been officially released. (In the open source community, the notion of release is typically metaphorical, since anyone can usually check out any desired version, whether it be in the development branch or not.) Often, the version that will eventually become the next major version is called the development branch. However, there is often more than one subsequent version of the software under development at a given time. âSoftware developmentâ redirects here. ...
A software release refers to the creation and availability of a new version of a computer software product. ...
Open source refers to projects that are open to the public and which draw on other projects that are freely available to the general public. ...
Some revision control systems have specific jargon for the main development branch - for example, in CVS, it is called the "MAIN". A more generic term is "mainline". The Concurrent Versions System (CVS), also known as the Concurrent Version System and the Concurrent Versioning System, implements a version control system: it keeps track of all work and all changes in a set of files, typically the implementation of a software project, and allows several (potentially widely separated) developers...
Shadow In cvc, an open source package building system (incorporating a simple revision control system for packages) produced by rPath, a shadow is a type of branch which is designed to "shadow" changes made in the upstream branch, to make it easier to maintain small changes. For information on relative paths in dynamic linking, please see rpath (linking) The correct title of this article is rPath. ...
|