在开发过程中,开始可以直接使用trunk进行开发,每到发布一个新版本时候,就拷贝到tags里。但随着系统的复杂化,特性的增加,模块的增多,系统越来越复杂,这个时候,为了系统的稳定性考虑,就可以考虑使用branch来进行开发。每增加一个新特性,首先在branch里进行,当稳定性达到一定程度后,就可以合并到trunk。
这个是由QGIS的开发者提出来的一个策略:
Initial announcement on mailing list
Before starting, make an announcement on the developer mailing list to see if another developerm is already working on the same feature. Also contact the technical advisor of the project steering committee (PSC). If the new feature requires any changes to the QGIS architecture, a request for comment (RFC) ist needed.
Create a branch
Create a new svn branch for the development of the new feature (see UsingSubversion for the svn syntax). Now you can start developing.
Merge from trunk regularly
It is recommended to merge the changes in trunk to the branch on a regular basis. This makes it easier to merge the branch back to trunk later.
Documentation on wiki
It is also recommended to document the intended changes and the current status of the work on a wiki page.
Testing before merging back to trunk
When you are finished with the new feature and happy with the stability, make an announcement on the developer list. Before merging back, the changes will be tested by developers and users. Binary packages (especially for OsX and Windows) will be generated to also involve non-developers. In trac, a new Component will be opened to fill tickets against. Once there are no remaining issues left, the technical advisor of the PSC merges the changes into trunk.
发表回复