当作曲家尝试从Bitbucket克隆我的git repo时,它会从缓存中加载它。如果未加载来自主服务器的最新提交,则会导致回购过时。每次清除作曲家的缓存似乎很麻烦。
我想强制作曲家永远不要从缓存中加载此仓库。 --prefer-source
可以解决问题。但是如何以最好的方式做到这一点。如何在下面的代码中添加强制无缓存?
"mybbrepo": {
"type": "package",
"package": {
"name": "project/mybbrepo",
"version": "1.0",
"type": "drupal-theme-custom",
"source": {
"url": "git@bitbucket.org:project/mybbrepo.git",
"type": "git",
"reference": "master"
}
}
},
答案 0 :(得分:1)
问题不在Composer的缓存中-您为存储库使用了错误的类型。您应该使用vcs
作为类型:
"mybbrepo": {
"type": "vcs",
"url": "git@bitbucket.org:project/mybbrepo.git"
},
package
类型仅应用于非编写程序包(内部没有composer.json
文件)-通常应避免使用它,因为它有很多限制:
注意:此存储库类型有一些限制,应尽可能避免:
- 除非您更改
version
字段,否则Composer不会更新软件包。- Composer不会更新提交引用,因此,如果使用
master
作为引用,则必须删除该软件包以强制执行 更新,并且必须处理不稳定的锁定文件。