标签归档:github

创建自己的Composer包

事先准备:

  1. Github帐号 以及 composer帐号
  2. git 以及 composer

第一步:

创建一个Github库,并且创建项目上传到Github上。

在本地创建项目

第二部:

初始化composer.json

初始化完成后再次提交到Github

第三部:

Github上的项目提交到packagist.org上。

1、 点击submit, 输入仓库地址

2、 确认提交

3、 成功提交

4、 在Github注册hook,当我们对仓库触发事件时候,同步到packagist.org

第四步:

完成composer项目

1、 编辑 composer.json 添加需要的信息

在这里我加上了这个项目的autoload规则。

可以看到,我使用了psr-4规则。那么要想通过autoload访问它,必须把命名空间写成namespace Pangou\HelloWorld;

2、 完成项目内容

通过autoload的规则,我们创建src目录,并且在src目录下创建了Greeting.php

3、 上传至Github

由于我们之前设置了hook,此时packagist.org上的项目将被会同步。

之前项目的特征码为:596a0f66098ba40ef481d09dd331c96760ab91b8,
现在为:bdefdc5d407f3bf6b4b1deabe44d14d0a4eb30da,同步成功。

第五步:

至上一步,一个composer项目基本完成。我们就可以在其他项目中进行使用。

接下来就是编写我们自己的代码,然后运行它。

在项目根目录下创建index.php

然后再项目根目录下运行

浏览器访问127.0.0.1:8080

成功调用。

第六步:

为项目打包。

刚刚创建项目使用的命令是:composer require pangou/hello-world dev-master

加了一个dev-master,表示我们项目正在开发阶段,还未正式发布。如果不添加的话是composer不下来的。

接下来就为项目打包。

1、 创建并切换到分支,并且将其推送到服务器上去。

接下来打包

可以看到packagist.org上项目已经存在0.1版本了。

把刚刚的项目删了,使用composer require pangou/hello-world重新创建。这次会发现,可以创建了。

composer.json中的版本也变成了0.1.0版本。 重新测试,一样可以答应出hello world!!!


over