Changes between Version 1 and Version 2 of SuperProjectWorkflow


Ignore:
Timestamp:
Dec 27, 2013, 5:50:28 PM (9 years ago)
Author:
Beman Dawes
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SuperProjectWorkflow

    v1 v2  
    11= Super-Project Workflow =
    22
    3 The Boost super-project uses a workflow derived from a proposal by Peter Dimov. See his [#OriginalProposalbyPeterDimov original proposal].
     3The Boost super-project uses a workflow derived from a proposal by Peter Dimov. See his [http://thread.gmane.org/gmane.comp.lib.boost.devel/247192 original proposal here].
    44
    55== Workflow ==
     
    4545* Would release management and regression testing scripts be simpler if the name of the release development branch was fixed (e.g. "release") rather than varying (e.g. "release/1.56.0")?
    4646
    47 == Original Proposal by Peter Dimov ==
    48 
    49 To expand on what I said in a previous message, I suggest the following structure for the superproject:
    50 
    51 * branch "latest": automatically tracks "develop" of submodules (scripted).
    52 * branch "develop": automatically tracks "master" of submodules (scripted).
    53 * branch "master": contains either the last release or the current release candidate.
    54 
    55 (This naming reflects a gitflow model. An alternative would be to use the more traditional unstable/stable for latest/develop.)
    56 
    57 Test runners test all three, in sequence.
    58 
    59 Release preparation starts with a gitflow release branch from boostorg:develop. The release manager then runs local tests and, if necessary, applies fixes on the branch by downgrading submodules to an earlier version or asking the submodule maintainer to resolve a problem and then upgrading the submodule to the later version.
    60 
    61 Ideally, this release branch should be tested non-locally. However, in the past switching branches for testing has proved a problem. Therefore, the procedure continues instead with:
    62 
    63 When the release manager is satisfied with the local test results for the release branch, he merges it to master. This becomes a release candidate. If tests prove satisfactory, the release candidate is tagged as an official release and the release branch is deleted. If not, work continues on the release branch.
    64 
    6547== Acknowledgements ==
    6648