如何向 Packagist 添加新的包版本?

How to add new package version to Packagist?

我在向 packagist 添加新的包版本时遇到问题。

https://github.com/skydriver/stripe-request https://packagist.org/packages/skydriver/stripe-request

我的项目在 Git Hub(带有 webhooks)上,开发版本和第一个发布版本已成功添加到 packagist,但是当我尝试创建新版本时,它没有显示在 packagist 上。 .. 这是我的 git 日志:

damjan@damjan-dev:~/www/projects/stripe/new-release$ git clone https://github.com/skydriver/stripe-request.git
Cloning into 'stripe-request'...
remote: Counting objects: 38, done.
remote: Compressing objects: 100% (29/29), done.
remote: Total 38 (delta 15), reused 21 (delta 5), pack-reused 0
Unpacking objects: 100% (38/38), done.
Checking connectivity... done.
...
damjan@damjan-dev:~/www/projects/stripe$ cd new-release/stripe-request/
damjan@damjan-dev:~/www/projects/stripe/new-release/stripe-request$ git add .
damjan@damjan-dev:~/www/projects/stripe/new-release/stripe-request$ git commit -m "New release"
[master fc9a023] New release
 1 file changed, 349 insertions(+)
 create mode 100644 StripeRequest.php
damjan@damjan-dev:~/www/projects/stripe/new-release/stripe-request$ git push origin master 
Username for 'https://github.com': SkyDriver
Password for 'https://SkyDriver@github.com': 
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 2.42 KiB | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
To https://github.com/skydriver/stripe-request.git
   4ea2a02..fc9a023  master -> master
damjan@damjan-dev:~/www/projects/stripe/new-release/stripe-request$ git tag -a 1.0.2
damjan@damjan-dev:~/www/projects/stripe/new-release/stripe-request$ git push --tags 
Username for 'https://github.com': SkyDriver
Password for 'https://SkyDriver@github.com': 
Counting objects: 1, done.
Writing objects: 100% (1/1), 175 bytes | 0 bytes/s, done.
Total 1 (delta 0), reused 0 (delta 0)
To https://github.com/skydriver/stripe-request.git
 * [new tag]         1.0.2 -> 1.0.2
damjan@damjan-dev:~/www/projects/stripe/new-release/stripe-request$ 

有人可以帮助我吗?

谢谢。

一切正常! (差不多)

您的最新提交(在撰写此答案时)是 fc9a023dcd03cf37f8a15b978d92eb40aa8b0de8。当我在 Packagist 上查看 dev-master 版本时,我看到了相同的提交哈希。这里一切都很好。

除了一件事! 您已在 composer.json 中指定 version 字段。去掉它!这就是您卡在 1.0.0.

上的原因

Packagist 上的 1.0.0 等版本对应 Github 上的标签。只需标记一个提交并推送它 (git push --tags)。很快这个版本在 Packagist 中就为人所知。

PS:Packagist 有时会有一些滞后,可能是几分钟。耐心点:)

dev-master 的提交散列与 Github 上的最新提交散列对应的事实证明挂钩正在工作。

PPS: 运行 composer.phar validate 并修复它所抱怨的一切。

PPPS:您还没有将 composer.lock 文件添加到 git。这可以(在这种情况下)被视为一件好事!由于它是一个库,当您启用 CI 时,CI 将使用最新版本的依赖项,这会警告您未来的不兼容性。但是每当一个项目 not 意味着对其他东西的依赖时,总是 添加锁定文件。