Composer 从 bitbucket 创建项目

the*_*eex 4 git bitbucket composer-php

我的 bitbucket 存储库中有一个项目,我是 Composer 的新手

在这个项目中,我有我所有的要求和设置的 composer.json。

我正在尝试直接从我的 bitbucket 存储库安装我的项目,我想做的事情与我们可以用 github 项目做的事情相同。

例如:

composer create-project thelia/thelia-project path/ 2.2.0
Run Code Online (Sandbox Code Playgroud)

但是如果我执行这个命令:

composer create-project vendor/name .--repository-url=https://vendor@bitbucket.org/vendor/name.git
Run Code Online (Sandbox Code Playgroud)

结果是:

https://vendor@bitbucket.org/vendor/name.git/packages.json could not be downloaded
Run Code Online (Sandbox Code Playgroud)

我已经在 bitbucket 上插入了我的 ssh 密钥以进行部署

我提交了一个 packages.json 到 name.git 存储库,但它不起作用。

这个命令显然是错误的:

composer create-project vendor/name . --repository-url=git@bitbucket.org:vendor/name.git
Run Code Online (Sandbox Code Playgroud)

结果是:

Invalid repository url given. Has to be a .json file or an http url
Run Code Online (Sandbox Code Playgroud)

我在某处读到 composer create-project 充当 git clone 和 composer install ,但我无法让它以正确的方式工作。

怎么了?我在这里找到了很多答案,但我无法让它们起作用。

Sve*_*ven 6

作曲家文档

--repository-url:提供一个自定义的仓库来搜索包,它将代替packagist使用。可以是指向 Composer 存储库的 HTTP URL,也可以是本地 packages.json 文件的路径。

这意味着此参数只能用于替换 Packagist,不能用作指向单个包的指针。没有参数可以做你想做的事。

但是,您不需要使用create-project,因为它所做的只是克隆存储库,并composer install在其依赖项上运行。你可以手动完成。

请注意,克隆存储库不会更改任何元数据。即使已经成功,您仍然必须手动执行此操作create-project。我认为这是create-project当前工作方式的一个缺陷,使其不太有用。