禁用dev-master依赖项的更新

时间:2017-02-15 12:52:37

标签: composer-php

我们有许多自定义和第三方库的复合项目。 我们正在寻找一种方法来更新大部分子项目与作曲家更新.. 但为了安全起见,我们需要将所有子依赖项锁定到当前安装的版本。

我对标记版本没有任何问题,但“dev-master”给我带来了麻烦

可以锁定依赖项“some / fu”:“dev-master”
(当前版本为0.1)保持原样,永不更新为0.2?

2 个答案:

答案 0 :(得分:2)

问题是dev-master是移动目标。因此dev-master的含义可以随时改变。

让我们说它代表了最新的1.0开发版本。在某些时候,所述库的作者开始处理1.1版本,因此他们分支1.0分支,dev-master自动成为最新的1.1开发版本。< / p>

从技术上讲,dev-master没有 版本的版本,它代表了主分支的最新开发状态。

如果您可以控制要求的源存储库,则可以使用branch alias

或者,您只能更新composer update vendor/package1 vendor/package2等特定软件包,或缩短特定供应商composer update vendor/*,而不是完整composer update。据我所知,目前还不可能从更新中排除特定的包。

答案 1 :(得分:0)

除了@Peh回答:

是的,使用dev-master是一种不好的做法。但如果真的有必要,你可以选择某个提交"symfony/finder": "dev-master#2633721877cae79ad461f3ca06f3f77fb4fce02e"

什么情况会导致master分支出现问题?你想什么时候执行composer update