gawkworkflow: Repo State
1
1 2.4.1 Branches in the Savannah Repository
1 -----------------------------------------
1
1 There are several kinds of branches in the Savannah repository.
1
1 "Dead Branches"
1 Branches with the prefix 'dead-branches/' (such as
1 'dead-branches/const') hold code that was never merged into the
1 main code base. For example, a feature which was started, but
1 later deemed to be unwise to add. These branches keep the code
1 available, but they are not updated.
1
1 "Stable Branches"
1 These branches are used for bug fixes to released versions of
1 'gawk'. Sometimes new development (i.e., user-visible changes)
1 also occurs on these branches, although in a perfect world they
1 would be used only for bug fixes.
1
1 These branches have names like 'gawk-4.1-stable',
1 'gawk-4.0-stable', and so on. Once a release has been made from
1 'master', the previous stable branch is not updated. For example,
1 once 'gawk' 4.1.0 was released, no more work was done on
1 'gawk-4.0-stable'.
1
1 "The Main Branch"
1 This is the 'master' branch. Here is where most new feature
1 development takes place, and releases of new major versions are
1 based off of this branch.
1
1 Feature branches are typically based off this branch as well, and
1 when the feature is deemed complete, merged back into it.
1
1 "Feature Branches"
1 Often, a proposed new feature or code improvement is quite
1 involved. It may take some time to perfect, or the 'gawk'
1 development team may not be convinced that the feature should be
1 kept.
1
1 For this purpose, the team uses branches prefixed with 'feature/'.
1 This prefix is used even for code that simply improves the
1 internals and does not make a user-visible change.
1
1 Having large changes on separate branches makes it easier for
1 members of the team to review the code, and also makes it easier to
1 keep the changes up-to-date with respect to 'master', since Git
1 excels at merging commits from one branch to another.
1