composer是php新时代的依赖管理利器,就像python的pip,nodejs的npm,javascript的bower等。你可以在自己的项目申明所依赖的外部库,composer可以帮你安装这些:
composer解决如下问题
你有一个项目需要依赖若干个库
其中一个库依赖其他库
找出你需要的版本进行安装
php7 + Composer是phper的战略。下面我们来聊聊如何将自己的项目或者列库打包成composer,然后提供下载的具体过程。
注意,以下不会说明Composer是什么?怎么用?怎么安装等问题,不明白的请自行网上搜索资料~
要准备的材料有
3. php代码(可以是项目或者类库等)
关于不清楚什么是 Github/Packagist的,请网上查阅,本教程不进行说明哦~
开始搭建
1. 我们首先登录github网站,新建一个repository(仓库),如图:
然后创建自己仓库信息
这样我们就创建了一个仓库
2. 使用Git工具,将仓库clone到本地,用于文件管理,如图:
git中,我们clone远程仓库地址,远程仓库地址在此处
命令:git clone https://github.com/wenhao26/win.git
克隆完成后,我们看到一下文件,注意,composer.json以及src文件是我后面加上去的
我们在win目录下,添加自己代码(项目或者类库)还有创建 Composer 配置文件 composer.json,可以使用命令 compser init 创建也可以手动创建
我提供一下我的composer.json配置信息,关于配置里面的参数都代表什么,可以自行查找资料
3. 我们将 win 下的文件推送到远程仓库
命令如下,
git add .
git commit -m 'commit files'
git push -u origin push
推送完成后,我们返回github上对应的仓库管理,可以看到刚才提交的文件列表,
4. 完成了github的处理,我们进行发布包到 Packagist
登录 Packagist,检出https://github.com/wenhao26/win.git仓库的代码,系统会根据仓库中 composer.json 文件自动设置包的相关信息。点击 “Submit” ,会出现一个输入栏,将 “Check” 。
设置 Packagist 中的包自动更新
如果不设置自动同步,每次 Github 中的代码更新,需要在对应包中手动更新,所以建议设置自动更新。
步骤如下:
进入你的仓库,选择 "Settings -> Integrations & services";
点击 "Add service",选择 “Packagist”;
填写你的 Packagist 账号对应的信息
配置完成后,点击右上角的“Test service”,如果出现 “Okay, the test payload is on its way.”,则说明配置成功。
如何使用
在完成上面的流程后,你就可以使用composer下载安装你刚才文件了,如图:
发布包到 Packagist 后,可能过几分钟才能在客户端 search 到;
没有打 tag 的要指定 dev,完整命令composer require "wenhao26/win @dev"
在对应文件目录下会生成一下的结构目录,
这样,我们就可以使用的我们项目以及类库了,以后,可以将好用的类库以及项目打包好,在日常的开发中,就不用重复造轮子了,直接使用composer堆积,释放冗余的时间,做其他更有意义的事情。
本教程只是简单具体地说明如何发布以及使用composer包,很多细节没有顾及上,请各位自行深入了解,大神请绕道!!!