我已经在自己的服务器上成功设置了 Satis,并且能够从中提取包。
但是,这些私有包中所需的依赖项会不断被克隆到其最前沿的版本,而不是指定的版本约束。我认为 Satis 正在创建最新开发版本的本地镜像。但是我不想有本地镜像,我只需要它们直接从 Packagist 安装。
那么我需要如何设置项目 / 包 / Satis 以从 Packagist 安装这些私有包中的依赖项?
谢谢。
这是我的 Satis 构建文件:
{
"name": "Package Server",
"homepage": "http://packages.URL",
"repositories": [
{
"type": "vcs",
"url": "git@bitbucket.org:USERNAME/REPO.git",
"options": {
"ssh2": {
"username": "USERNAME",
"pubkey_file": "PUBFILE",
"privkey_file": "PRIVATEFILE"
}
}
}
],
"require-all": true
}
这是需要私有包的项目的 composer.json 文件(包没有标记的版本):
{
"name": "Test Project",
"description": "",
"require": {
"php": ">=5.4.0",
"USERNAME/REPO": "*"
},
"repositories": [
{
"type": "composer",
"url": "http://packages.URL"
}
],
"minimum-stability": "dev"
}
这是私有包的composer.json:
{
"name": "USERNAME/RPO",
"description": "",
"require": {
"php": ">=5.4.0",
"illuminate/support": "5.0.*",
"vinkla/hashids": "~1.0"
},
"minimum-stability": "dev"
}