json - composer.json中的 "version"字段是什么意思?

标签 json composer-php version

在composer.json中,可以指定一个“版本”字段。这是一个例子:

{
    "name": "vendor/dummy_package",
    "description": "Dummy package",
    "version": "1.0.0"
}

由于该字段似乎不是强制性的,所以它的含义是什么?

它用于比较vendor/dummy_package的所需版本吗?

在这种情况下,它会胜过标签吗?

谢谢!

最佳答案

该版本对于Composer解析软件包是必需的。但是,在大多数情况下(以及100%使用packagist的时间),版本是从存储库中的标签和分支中获取的。

在这些情况下,如果版本存在于composer.json中,则对于分支它将被忽略,但是对于标签,它必须与标签名称匹配,否则,撰写者将认为该标签无效,因为它具有冲突的版本信息。因此,我们通常建议人们完全放弃该版本,因为它减少了出现问题的机会。

在某些情况下,例如,如果您想使用artifact repository,则需要在composer.json中指定版本。

总结一下:如果您不知道需要使用它,请忽略它:)

关于json - composer.json中的 "version"字段是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36769404/

相关文章:

ruby - 安装了哪个 ruby 版本?

json - 配置文件 (.\ionic.config.json) 不是有效的 JSON 格式

symfony - 如何通过symfony2上的现有项目恢复composer.json?

javascript - 在javascript中将树从graphql格式转换为json格式

git - 如何使用Composer进行浅克隆?

php - Laravel Composer 更新错误 - 无法解码响应 : zlib_decode(): data error

r - 如何从 unix 命令行提取 R 主要.次要版本?

r检查软件包版本是否大于x.y.z

javascript - JSON.parse() 不会接受有效的 JSON

json - 我如何需要一个字段或另一个字段或(其他两个字段之一)但不是全部?