首先确保项目包含正确配置的composer.json文件,内容需涵盖名称、描述、许可证、自动加载规则及依赖;接着将代码推送到GitHub等公共仓库并打上版本标签如v1.0.0;然后访问packagist.org登录后点击Submit提交仓库URL,确认信息无误即可发布;最后为实现自动更新,可在GitHub仓库中添加Packagist提供的webhook地址,绑定Packagist账号与API令牌,启用推送自动同步。完成后他人可通过composer require命令安装使用。

要将你的 PHP 包发布到 Packagist,使其可以通过 Composer 安装,整个过程其实并不复杂。只要你的代码托管在 GitHub、GitLab 或 Bitbucket 等公共平台,就可以轻松完成发布。下面一步步说明如何操作。
准备你的 Composer 包
确保你的项目已经正确配置了 composer.json 文件,这是 Composer 识别和安装包的核心文件。基本内容应包括:
name:格式为 vendor/package-name(例如:myname/my-awesome-package) description:简短描述你的包功能 type:通常是 library license:如 MIT、Apache-2.0 等 autoload:定义自动加载规则,比如使用 PSR-4 require 和 require-dev:声明依赖
示例 composer.json:
{ "name": "myname/my-awesome-package", "description": "A simple PHP utility package", "type": "library", "license": "MIT", "authors": [ { "name": "Your Name", "email": "you@example.com" } ], "autoload": { "psr-4": { "MyNameMyAwesomePackage": "src/" } }, "require": { "php": "^7.4 || ^8.0" }}
确认文件无误后,提交到你的 Git 仓库(如 GitHub)。
推送代码到公共 Git 仓库
Packagist 需要能访问你的代码。推荐使用 GitHub:
创建一个新的仓库(如 my-awesome-package) 推送你的代码,包含 composer.json 打一个版本标签,例如 v1.0.0(Packagist 会读取标签作为发布版本)
打标签命令:
git tag -a v1.0.0 -m "First stable release"git push origin v1.0.0
提交包到 Packagist
访问 https://www.php.cn/link/ec811d0d775adc62776ba80fadd4ed19 并登录(支持 GitHub 登录)。
自由画布
百度文库和百度网盘联合开发的AI创作工具类智能体
73 查看详情
点击右上角的 “Submit” 按钮 粘贴你的仓库 URL(如 https://github.com/myname/my-awesome-package) 点击 “Check” 按钮,Packagist 会抓取 composer.json 信息 确认无误后点击 “Submit”
提交成功后,你的包就会出现在 Packagist 上,别人就可以通过以下命令安装:
composer require myname/my-awesome-package
启用自动更新(可选但推荐)
为了让 Packagist 在你推送新标签时自动同步,需要设置 webhook。
Packagist 提供了一个通用 webhook 地址:
https://www.php.cn/link/ec811d0d775adc62776ba80fadd4ed19/api/github?username=YOUR_PACKAGIST_USERNAME&apiToken=YOUR_API_TOKEN
将它添加到 GitHub 仓库的 Webhooks 中(Settings → Webhooks → Add webhook),事件选择“Just the push event”即可。
这样每次你 push 新标签,Packagist 就会自动更新。
基本上就这些。你的包现在已上线,全球开发者都可以通过 Composer 使用它。保持文档清晰、版本规范,后续维护更轻松。
以上就是composer如何发布自己的包到packagist_讲解如何将自己的包发布到Packagist的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/530426.html
微信扫一扫
支付宝扫一扫