In large Libre Source software projects, versioned with Mercurial or similar DVCS tools, which of the following is considered to be more conventional:
- Keeping the latest "stable" version of the software in the
defaultbranch. Tagging each release indefaultso you know which revision got packaged up as a download. Merging patches intodefaultas soon as they are tested. Keeping new features, etc. in named branches to be merged intodefaulton the next release. - Keeping each release in a named branch, or similar. Using
defaultto keep bleeding-edge code that's only intended to be run by developers or the very foolhardy.
Or... is there some better pattern of workflow that it widely accepted?