2

在 PHPcomposer.json文件中,该require字段包含许多键/值对。

"require": {
    "php": ">=5.3.3",
    "symfony/console": "~2.3@dev",
    "symfony/finder": "2.2.1",
    "symfony/yaml": "2.2.1",
    "symfony/process": "2.2.1",
    "symfony/validator": "2.2.1",
    "n98/junit-xml": "dev-master",
    "fzaninotto/faker": "1.1.0",
    "composer/composer": "dev-master"
},

确切地说,每个键/值对的值是用来做什么的?

我知道从概念上讲这些只是版本号。例如,以下

"symfony/finder": "2.2.1"

告诉作曲家2.2.1symfony/finder软件包的版本是必需的。

我不清楚的是

  1. 版本控制允许的语法(即是什么~2.3@dev意思)

  2. 为什么有些版本只是文本 ( dev-master)

我的假设是这些在某种程度上与版本控制系统中的分支或标签有关,或者可能与包composer.json文件中定义的显式版本有关,但我无法确切地了解它是如何工作的。

如果有人知道,或者可以将我指向手册中解释这一点的正确部分,我将不胜感激。

4

1 回答 1

3
  1. ~2.3@dev 表示:“使用 ~ 指定最低版本,但允许指定的最后一位数字上升。” dev 表示它的开发版本,“可用选项(按稳定性顺序)是 dev、alpha、beta、RC 和 stable。”
  2. 这意味着它是一个主分支

我在这里找到了所有这些:

于 2013-05-31T00:49:34.350 回答