Drupal核心与模块版本及版本号选择技巧

一般来说,一些知名软件,如Windows, office, linux等都有一套自己的软件版本号规则。

对于Drupal来说,根据我的经验观察,会遵循如下规律:
Drupal核心:
    主版本号.子版本号[-版本后缀]
    实例:8.0-alpha10
Drupal第三方模块:
    Drupal核心版本号.x-主版本号.子版本号[-版本后缀]
    实例:7.x-3.0-rc3

一般情况下用到的版本后缀如下:

alpha (内测版)
beta (外测版)
rc (发行候选版)
关于各个版本后缀的区别,请自行到上面的百度百科阅读之。

Druapl核心及Drupal上面一些知名模块,基本都能很好的遵循上面的命名规则。

对于Drupal核心,只看前面的数字很容易辨识Drupal的核心版本,比如上面的是8。0对应着相应的小版本号;在Drupal核心没有正式发布前,小版本号一般都是0,下面是一个比较典型的Drupal版本发布时间线。

    8.0-alpha1
    8.0-alpha2
    …
    8.0-beta1
    8.0-beta2
    …
    8.0-rc1
    8.0-rc2
    …
    8.0
    8.1
    8.2
    …

截止到这篇文章的写作日期,Drupal核心的版本号是8.0-alpha10。就是说Drupal8仍处于内测阶段,很多底层的api仍然会变化。
对于一般的用户,比如不写代码的同学,强烈不推荐这个时候使用Drupal 8.
如果有一定的代码能力,能进行一些比较简单的模块自定义开发,仍然不建议这个时候使用。
如果你是Drupal的核心发烧友,那估计这个世界上没有什么能阻止你使用Drupal8 的alpha版本了。
即使是这样,网站的将来升级也是很大的问题。除非不升级,否则一升级,必然是一个很痛苦的过程。

什么时候推荐使用Drupal 8?答案是Drupal 8.0-rc1发布的时候。这个时候核心api基本稳定了。除非有必要,一般情况下不会在api上有所改变了。网站升级仍然一定得风险,但是相比于alpha版本,风险已经大大降低了。

关于Drupal8何时可以使用,目测最快也要到今年(2014年)年底。因为现在还是的alpha阶段仍未结束,粗略估计还需要2个月时间才能结束。之后就是beta阶段,这个阶段应该不少于6个月;最后的rc阶段,应该也会持续两个月左右。之后才是drupal 8.0的正式发布日期。

扯完Drupal核心,下面看看模块的版本号问题。
一个比较典型模块版本号:7.x-3.0-rc3

7.x对应这Drupal核心版本号
3.0中的3,对应这个模块本身的api版本号。如何理解?
一般来说,模块会有不同是实现方式。
比如userpoints模块,有1.x版本,2.x版本。
    1.x版本的底层实现是完全使用数据库操作的方式实现的。
    2.x是准备基于Drupal 7的entity来实现,很多基于数据库的操作,完全可以使用entity api来说实现;这样代码量会降低,维护的时间成本降低。但是很遗憾,这个主版本号的代码已经有13个月没有更新了。

对于一个维护比较好的模块,其版本号应该是如下的样子:

    6.x-1.0-alpha1
    6.x-1.0-alpha2
    …
    6.x-1.0-beta1
    6.x-1.0-beta2
    …
    6.x-1.0-rc1
    6.x-1.0-rc2
    …
    6.x-1.0
    6.x-1.1
    …

    6.x-2.0-alpha1
    6.x-2.0-alpha2
    …
    6.x-2.0-beta1
    6.x-2.0-beta2
    …
    6.x-2.0-rc1
    6.x-2.0-rc2
    …
    6.x-2.0
    6.x-2.1
    …

    7.x-1.0-alpha1
    7.x-1.0-alpha2
    …
    7.x-1.0-beta1
    7.x-1.0-beta2
    …
    7.x-1.0-rc1
    7.x-1.0-rc2
    …
    7.x-1.0
    7.x-1.1
    …

    7.x-2.0-alpha1
    7.x-2.0-alpha2
    …
    7.x-2.0-beta1
    7.x-2.0-beta2
    …
    7.x-2.0-rc1
    7.x-2.0-rc2
    …
    7.x-2.0
    7.x-2.1
    …

看完上面的列表,对于我们选择模块有一定的指导意义。
对于一般建站者,不涉及代码方面的建站,推荐选择模块的稳定发行版,即不带alpha,beta,等后缀的版本。
对于有一定开发能力的建站者,仍然推荐做出如上选择。但是不排除有时候模块的dev版本会修复一些bug,如果经过认真测试不会对现有功能产生破坏,可以使用模块的dev版本。

对于那些狂热的粉丝,可能没有什么阻止你去通过git直接下载模块的最新代码了。

上面文字,全部原创,如有谬误及不足指出,欢迎留言及拍砖。

时间: 2024-10-12 07:36:12

Drupal核心与模块版本及版本号选择技巧的相关文章

Mongoose源码剖析:核心处理模块

引言 前面我们介绍了 Mongoose所有的几个主要的数据结构mg_context.mg_connection.mg_request_info,还有Mongoose的 生命主线.有了这些基础就可以来看看Mongoose的核心处理工作是怎样的.如果你还没有阅读前面的文章,你可以通过下面的隧道直通: Mongoose源码剖析:外篇之web服务器 Mongoose源码剖析:Introduction and Installation Mongoose源码剖析:数据结构篇 Mongoose源码剖析:mon

HBase核心功能模块--读书笔记

客户端Client   客户端 Client 是整个 HBase 系统的入口.使用者直接通过客户端操作 HBase.客户端 使用 HBase 的 RPC 机制与 HMaster 和 RegionServer进行通信.对于管理类操作Client 与 HMaster 进行 RPC 通信对于数据读写类操作Client 与RegionServer 进行 RPC 交互.这里 客户端可以是多个并不限定是原生 Java 接口还有 Thrift.Avro.Rest等客户端模式甚 至 MapReduce 也可以算

《HBase企业应用开发实战》—— 1.4 HBase的核心功能模块

1.4 HBase的核心功能模块 Hadoop框架包含两个核心组件:HDFS和MapReduce,其中HDFS是文件存储系统,负责数据存储:MapReduce是计算框架,负责数据计算.它们之间分工明确.低度耦合.相关关联.对于HBase数据库的核心组件,即核心功能模块共有4个,它们分别是:客户端Client.协调服务模块ZooKeeper.主节点HMaster和Region节点RegionServer,这些组件的描述和相互之间的关联关系如图1-3所示. 1.4.1 客户端Client 客户端Cl

获取Android手机型号,系统版本,App版本号等信息

 MainActivity如下: package cn.testgethandsetinfo; import android.os.Bundle; import android.text.TextUtils; import android.widget.TextView; import android.app.Activity; import android.content.Context; import android.content.pm.PackageInfo; import androi

关于drupal的commerce_auction模块

问题描述 关于drupal的commerce_auction模块 做的网站有在线竞拍功能,需用到drupal7的 commerce auction 模块,装了启用需要的好多个模块启用了auction却没法添加产品,貌似报错product绑定字段丢失,请教drupal大神如何实现在线竞拍功能= = 解决方案 参考:http://www.drupalauction.com/how-set-drupal-commerce-auction

drupal中media_gallery模块怎么与colorbox模块相结合?

问题描述 drupal中media_gallery模块怎么与colorbox模块相结合? 我安装了media gallery和colorbox这两个模块 需要实现点击相册封面出现预览图的效果, 现在是一点击封面就进入了相册, 求助怎么配置colorbox 关联这两个模块呀?

Android获取手机型号,系统版本,App版本号等信息

MainActivity如下: package cn.testgethandsetinfo; import android.os.Bundle; import android.text.TextUtils; import android.widget.TextView; import android.app.Activity; import android.content.Context; import android.content.pm.PackageInfo; import android

建材类企业网站长尾关键词选择技巧与优化方法

随着互联网信息的爆发时增长,越来越多的网民都在互联网上搜索各种各样的文字来寻找到自己想要的东西,这也证明了互联网的时代已经超越了现实中的我们,当网民们想在百度上找到暖气片并购买,他们就会在百度搜索框上输入"暖气片哪种品牌最好"如果对暖气片的种类不了解,他们会在百度搜索框上输入"什么样类型的暖气片最好"如果对暖气片的价格不是很熟悉,他们会在百度搜索框上输入"暖气片的价格是多少钱".这些往往是我们想不到的,也是用户随手输入的文字,然而这些文字真的可以

网站优化之关键字选择技巧分享

我相信广大站长朋友们对网站关键字都不陌生,毕竟我们建立一个网站就需要为我们的网站选择一些合适的关键字.但是笔者和一些新手朋友们交流的时候,他们经常会问及到这样的一个问题"我们的网站应该如何去选择关键字呢",这样看来,一些新手对网站关键字的选择还不是很了解,所以笔者希望在这里跟大家分享下自己在选择关键字时的一些经验,希望对大家有用,如果你们觉得有什么不好的,同时也希望能指出,欢迎拍砖. 网站的关键字可以分为很多类,主要有核心关键字.相关关键字.长尾关键字.错误关键字.以及生僻关键字等.一