Composer create-project在本地包存储库上失败

Uta*_*aal 13 php composer-php

我正在尝试创建一个本地存储库来测试一个作曲家项目但是

composer create-project --repository-url=/path/to/packages.json vendor/project-name
Run Code Online (Sandbox Code Playgroud)

失败了

[UnexpectedValueException]

Unknown package has no name defined [...]
Run Code Online (Sandbox Code Playgroud)

packages.json是:

{
  "packages": {
    "vendor/project-name": {
      "dev-master": {
        "name": "vendor/project-name",
        "type": "project",
        "version": "dev-master",
        "source": {
          "url": "/path/to/project/.git",
          "type": "git"
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

至于作曲家指南,这应该足够了.

任何线索?

Ant*_*iro 19

执行此操作并告诉我它是否也适合您:

mkdir /tmp/project-name
cd /tmp/project-name
git init
vim (or whatever you like) packages.json
Run Code Online (Sandbox Code Playgroud)

粘贴并保存:

{
    "package": {
        "name": "vendor/project-name",
        "version": "1.0.0",
        "source": {
          "url": "/tmp/project-name/.git",
          "type": "git",
          "reference": "master"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

执行:

echo '{ "name": "test/test", "version": "1.0.0", "dist": { "url": "http://dummy.com/dummy.zip", "type": "zip" } }' > composer.json

git add packages.json composer.json
git commit -a -m "first commit"
Run Code Online (Sandbox Code Playgroud)

然后创建你的包:

composer create-project --repository-url=/tmp/project-name/packages.json vendor/project-name
Run Code Online (Sandbox Code Playgroud)