管理员
- UID165
- 注册日期2004-11-25
- 最后登录2022-09-22
- 发帖数9186
- 经验397枚
- 威望1点
- 贡献值124点
- 好评度41点
|
Firefox dev channels
There are now four active code repositories (well, there's way more than that, but the four are the main ones, the others are for specific projects like Javascript performance): mozilla-central, mozilla-aurora, mozilla-beta, and mozilla-release
The way I understand how things are going, it goes something like this:
Mozilla-central is just like the old Minefield builds, everything lands here first. New features are only added to mozilla-central. This has builds come out nightly, just like before.
Every 6 weeks, they do a merge into mozilla-aurora. If a feature is completely developed or the devs feel like it can be finished up pretty quickly, it is included in that merge. From there, features become fully implemented and stability fixes are applied. (Those feature/stability fixes are also backported back to mozilla-central at the same time, so that work there can continue without having to reinvent the wheel.) Builds from Aurora should be updated up to daily, depending on if anything's landed for that day. (This is currently not working yet as the infrastructure hasn't turned on updates yet.)
At the end of the 6-week Aurora cycle, the devs make the determination of what features will be merged into mozilla-beta. This is a lot more like the old release candidate builds than betas from the previous releases, as the only things going into mozilla-beta are stability fixes. If something latebreaking happens that makes a feature unsuitable for release, it is removed or turned off. Builds are probably not going to be nightly, as not much should be landing at this point.
At the end of the 6-week beta cycle, the final beta build is copied over to mozilla-release. Absolutely nothing lands in this repository, it's only used for as a locked down reference to what was released, in case Mozilla has to do a quick release to fix some fatal errors that can't wait for the next release cycle.
Builds from mozilla-central have version numbers X.a1, where 'X' is an integer.
When mozilla-central merges to mozilla-aurora, aurora gets version X.a2, where 'X' is the integer from mozilla-central, and mozilla-central gets bumped to X+1.a1, where 'X+1' is one more than it previously had.
When mozilla-aurora merges to mozilla-beta, beta gets version X, where X is the integer from mozilla-aurora. There's nothing after the X, because they want the version number to be as close to the final release's version scheme as possible to avoid any possible site detection problems.
When mozilla-beta goes to mozilla-release, the release still has version X, since it's just the last build from the beta channel, which had version X.
All of this is happening at the same time. As soon as the merges happen, the next version's work starts up for the other branches.
Right now, work on Firefox 5 is going on in the aurora channel, while work on Firefox 6 is going on in mozilla-central. At the next merge cycle (six weeks from yesterday, if everything works), Firefox 5 will be in the beta channel, 6 will be in aurora, and 7 will be on central. Six weeks after that, Firefox 5 will be officially released, 6 will be in beta, 7 will be in aurora, and 8 will be in central.
And so on.
|