OpenWrt开发:06---Ubuntu编译OpenWrt源码

一、OpenWrt的代码管理工具

  • OpenWrt社区同时使用Subversion和Git两种工具来管理代码
  • OpenWrt的外围代码已经逐渐转到github提供的Git托管空间上

Subversion管理代码目录

Subversion管理代码非常灵活,通常会创建 tags、branches和trunk共3个目录管理代码

  • trunk目录:用 来保存开发的主线,一般最新的功能均在 trunk 目录提交
  • branches目录:存放分支, 用于功能开发完成之后创建分支、修改 BUG 及发布版本使用,或者某些功能开发分支
  • tags目录:保存标签复制,一个标签是一个项目在某一时间点的“快照”,用来给发布版 本的代码创建快照,以便多数开发人员基于这个版本进行开发修改及测试使用,一般 永远不再修改

OpenWrt的Subversion的目录配置

OpenWrt在上面那些目录的基础上,还增加了 docs、feeds 和 packages 这3个目录

  • 分支(branches目录):用于功能开发完成之后创建分支、修改 bug 及发布版本使用, 或者某些功能开发分支。OpenWrt 社区每隔两年左右会创建一个分支用于发布特定版本, 最新的代码线分支为 chaos_calmer。社区在 2015 年 9 月 12 日发布了 15.05 版本,但未使用 SVN 创建标签。最近3个分支信息地址见下表
  • docs目录:保存文档,使用 SVN 来查看修改历史信息, 现在 OpenWrt 已经不再使用这个目录
  • feeds目录:保存一些额外扩展的软件包,也逐渐不再使用, 其中代码已转到使用 Git 仓库来管理。地址为 https://github.com/openwrt
  • packages目录保存 OpenWrt 基础软件包,会被经常用到
  • 标签(tags目录):为发布版本代码,最近稳定版本标签有 backfire_10.03.1, attitude_adjustment_12.09。以后版本未创建标签
  • 主干(trunk目录):始终是最新的代码,OpenWrt 社区将最新的代码线命名为“Designated Driver”。最新代码包含实验性质的代码,可能会碰到编译或运行的问题,建议新手不要采用
  • OpenWrt版本对比表如下:

OpenWrt开发:06---Ubuntu编译OpenWrt源码