我创建了一个包含Composer包的私有Git存储库。 我composer.json
是回购的根:在任何分支或标签中找不到有效的composer.json
{
"name": "vendor/nameofpackage",
"type": "library",
"description": "blaaa",
"license": "All rights reserved.",
"version": "0.0.1",
"keywords": ["a", "b", "c"]
}
但如果我要运行任何作曲家命令(-v
),我得到:
[Composer\Repository\InvalidRepositoryException]
No valid composer.json was found in any branch or tag of [url], could not load a package from it.
Exception trace:
() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/Repository/VcsRepository.php:265
Composer\Repository\VcsRepository->initialize() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/Repository/ArrayRepository.php:179
Composer\Repository\ArrayRepository->getPackages() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/DependencyResolver/Pool.php:104
Composer\DependencyResolver\Pool->addRepository() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/Command/ShowCommand.php:300
Composer\Command\ShowCommand->getPackage() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/Command/ShowCommand.php:129
Composer\Command\ShowCommand->execute() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/vendor/symfony/console/Command/Command.php:259
Symfony\Component\Console\Command\Command->run() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/vendor/symfony/console/Application.php:844
Symfony\Component\Console\Application->doRunCommand() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/vendor/symfony/console/Application.php:192
Symfony\Component\Console\Application->doRun() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/Console/Application.php:167
Composer\Console\Application->doRun() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/vendor/symfony/console/Application.php:123
Symfony\Component\Console\Application->run() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/src/Composer/Console/Application.php:98
Composer\Console\Application->run() at phar://D:/wamp/www/mosaicgenerator/skeletonmosaic/api/composer.phar/bin/composer:43
require() at D:\wamp\www\mosaicgenerator\skeletonmosaic\api\composer.phar:25
我可以肯定地访问Git的回购,没关系。它只有主分支(没有分支)。
任何想法?
不要向“composer.json”添加“版本”键,因为每个具有该文件的提交现在都会被标记为版本0.0.1。这将失败,并可能是您的问题的原因。版本将通过使用存储库中的标签进行标记。 – Sven
我只使用版本密钥来跟随更改,它没有被我想象的任何东西使用。这只是我的眼睛。 – simonSays
https://getcomposer.org/doc/04-schema.md#version“软件包的版本,在大多数情况下,这不是必需的,应该省略(见下文)。”您应该在存储库中标记版本。如果您需要快速查看您正在使用的版本:'git describe'会更精确地告诉您此版本的关键字:'0.0.1-10-g156ad78'意味着您的版本为0.0.1,另有10个版本在标签之后提交,并且当前提交是ID为156ad78的Git回购(“g”)。 – Sven