composer 发布自己的开源软件

首先创建一个github项目。

在项目中,创建一个composer.json文件。

{
  "name": "jiqing9006/valid",
  "description": "PHP接口参数验证小工具,简单实用",
  "keywords": [
    "valid",
    "form",
    "表单",
    "validate",
    "validation",
    "validator",
    "api"
  ],
  "authors": [
    {
      "name": "jiqing9006",
      "email": "jiqing9006@gmail.com"
    }
  ],
  "minimum-stability": "dev",
  "require": {
    "php": ">=5.3.0"
  },
  "license": "MIT",
  "autoload": {
    "psr-4": {
      "Valid\\": "src/"
    }
  }
}

autoload中的内容表示,命名空间是Valid,自动加载src中的文件。

然后,将代码发布到https://packagist.org/中。

这个时候,代码不是自动更新的。

到github中添加自动更新服务。

经过这些处理之后,github更新就会自动变更到https://packagist.org/中。比如发布新的包,比如更改说明文档等等。

这个狗日的错误坑死我了,我试着手动发布版本,不行。

通过git tag 发布版本也不行。

没想到是因为镜像出了问题,不更新了。

果断换镜像。

composer config -g repo.packagist composer https://packagist.laravel-china.org

然后就ok了。镜像不更新,我就找不到版本。等了一下午也没反应。

下面说说git tag 很方便!

git tag 查看本地版本
git tag [name] 创建一个新的版本
git tag -d [name] 删除本地版本
git push origin :refs/tags/[name] 删除远程版本
git push origin --tags 提交版本
git log --oneline --decorate --graph 查看提交状态

更新下来之后,就可以使用了。

<?php
/**
 * Created by PhpStorm.
 * User: jiqing
 * Date: 18-7-25
 * Time: 下午9:35
 */

require 'vendor/autoload.php';
$validators = [
    'tel' => 'required|tel',
    'name' => 'required',
    'email' => 'r|email',
    'password' => 'r|min_len,6|max_len,12'
];

if ($err = Valid\Valid::is_valid($validators,$_POST)) {
    echo $err;
}

太不容易了!!!都被镜像给坑了!!!

posted @ 2018-07-25 22:00  TBHacker  阅读(736)  评论(0编辑  收藏  举报