答案是创建并发布Composer包到Packagist只需五步:准备项目结构、编写composer.json、推送到公共Git仓库、提交到Packagist、设置自动更新。首先确保项目包含src/、composer.json和README.md;接着配置composer.json,明确包名、命名空间映射(PSR-4)、依赖等信息;然后将代码推送到GitHub等公开仓库,并打上语义化版本标签如v1.0.0;随后登录Packagist提交仓库URL,系统会自动抓取包信息;最后推荐配置GitHub Webhook,实现新版本自动同步。完成后,用户即可通过composer require your-username/your-package-name安装使用。整个过程关键在于规范命名、正确映射命名空间和版本标签管理。

创建并发布自己的Composer包到Packagist,其实并不复杂。只要你有一个公开的Git仓库(比如GitHub),并正确配置composer.json文件,就可以让别人通过composer require安装你的包。
1. 准备你的项目结构
一个标准的Composer包通常包含以下结构:
your-package/├── src/
│ └── YourClass.php
├── composer.json
└── README.md
说明:
-
src/目录存放你的PHP类文件。 -
composer.json是核心配置文件,定义包名、依赖、自动加载等信息。 -
README.md帮助使用者了解你的包怎么用。
2. 编写 composer.json 文件
这是最关键的一步。下面是一个基本的composer.json示例:
关键字段解释:
-
name:格式为
用户名/包名,必须全小写,使用连字符分隔词组。 - autoload.psr-4:定义命名空间映射,确保 Composer 能自动加载你的类。
- require:声明你的包依赖的PHP版本或其他库。
完成后运行 composer install 测试是否能正常解析依赖和自动加载。
3. 推送到公共Git仓库
将代码推送到 GitHub、GitLab 或 Bitbucket 等平台。
- 确保仓库是公开的(Packagist只能抓取公开仓库)。
- 给代码打上版本标签,例如:
git tag v1.0.0git push origin v1.0.0
版本标签推荐使用语义化版本(如 v1.0.0、v2.1.3)。
云模块_YunMOK网站管理系统采用PHP+MYSQL为编程语言,搭载自主研发的模块化引擎驱动技术,实现可视化拖拽无技术创建并管理网站!如你所想,无限可能,支持创建任何网站:企业、商城、O2O、门户、论坛、人才等一块儿搞定!永久免费授权,包括商业用途; 默认内置三套免费模板。PC网站+手机网站+适配微信+文章管理+产品管理+SEO优化+组件扩展+NEW Login界面.....目测已经遥遥领先..
4. 提交到 Packagist
访问 https://www.php.cn/link/ec811d0d775adc62776ba80fadd4ed19 并注册账号。
- 登录后点击右上角“Submit”按钮。
- 粘贴你的Git仓库URL(如:https://github.com/your-username/your-package-name)。
- 点击“Check”然后“Submit”。
提交成功后,Packagist会抓取你的composer.json信息,并将你的包公开。
5. 启用自动更新(可选但推荐)
为了让新版本自动同步到 Packagist,可以设置GitHub Webhook。
- Packagist 会提供一个 webhook URL。
- 进入 GitHub 仓库的 Settings → Webhooks → Add webhook。
- 将 Packagist 提供的 URL 粘贴进去,内容类型选
application/json。
这样每次你推送新标签时,Packagist 会自动更新包信息。
基本上就这些。完成之后,别人就可以通过下面命令安装你的包:
composer require your-username/your-package-name不复杂但容易忽略细节,比如命名空间映射或版本标签。只要每一步都规范操作,发布过程很顺畅。









