composer 代码库管理

参考资料:
https://packagist.org/about#naming-your-package

简介
composer 命令的请求源是 packagist.org

********************************
发布项目到composer官方仓库
********************************
把 php在git的项目发布到 composer 官方仓库 packagist.org

1、在git项目的 master-x 版本根目录创建文件 composer.json ,packagist.org 会定时来抓取项目的更新信息

{
    "name": "janchou/sms",
    "type": "library",
    "description": "php sms sender which implement  cmpp protocol",
    "keywords": ["cmpp protocol","sms sender"],
    "homepage": "https://github.com/xxx/phpcmpp",
    "license": "MIT",
    "authors": [
        {
            "name": "zhian zhou",
            "email": "297963123@qq.com",
            "homepage": "https://github.com/xxx",
            "role": "Developer"
        }
    ],
    "require": {
        "php": ">=5.4.0",
        "yiisoft/yii2": "*"
    },
    "autoload": {
        "psr-4": {
            "janchou\\sms\\": "phpcmpp"
        }
    }
}

2、提交项目地址到 https://packagist.org/packages/submit

****************
在项目更新的时候,触发composer 重新抓取github的项目信息
****************
配置svn或者git的hook,在提交代码的时候,使用post提交信息到如下地址
地址:
    https://packagist.org/api/update-package?username=username1&apiToken=API_TOKEN
body的内容:
    {"repository":{"url":"https://packagist.org/packages/janchou/phpcmpp"}}

********************************
    composer源上拉取代码、使用
********************************
安装包
方式一:(要 composer.json文件)
1、 在当前目录下创建 composer.json

{
    "require": {
        "janchou/phpcmpp": "master-x"
    }
}

2、执行命令安装
composer install

方式二:(不要 composer.json文件)
1、执行命令安装
composer  require --prefer-dist janchou/phpcmpp "master-x"

3、执行结果

会自动在当前目录下创建vendor目录
vendor/janchou/sms/phpcmpp

会在文件\vendor\composer\autoload_psr4.php中添加
return array(
    "janchou\\sms\\" => array($vendorDir . '/phpcmpp'),
);

代码的使用
$phpcmpp = new \janchou\sms\phpcmpp();

composer 代码库管理的更多相关文章

  1. SourceTree 代码库管理工具

    1.SourceTree 简介 SourceTree 是拥有可视化界面的项目版本控制软件,适用于 git 项目管理,window.mac 均可用. 官网下载地址 SourceTree 其它下载地址 S ...

  2. GitHub Desktop 代码库管理工具

    1.GitHub Desktop 简介 GitHub Desktop 是用于 GitHub 项目版本控制软件. 官网下载地址 GitHub Desktop 其它下载地址 GitHub Desktop ...

  3. 转:PHP Composer 管理工具的介绍 这个相对清晰点

    转自:http://www.aichengxu.com/view/14872 一.PHP的一些臭历史 Dependency Manager For PHP,Composer.在Composer还没诞生 ...

  4. Composer : php依赖管理工具

    原始时代 我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了 总结如下 代码 ...

  5. composer api 参考

    composer note 简介 composer 是php的依赖管理工具.可以声明项目所依赖的库,composer会帮我们安装上 composer 默认基于项目来管理和安装库(包),将依赖的库安装到 ...

  6. 【下一代核心技术DevOps】:(三)私有代码库阿里云Git使用

    1. 引言 使用DevOps肯定离不开和代码的集成.所以要想跑通整套流程,代码库的选型也是非常重要的.否则无法实现持续集成.目前比较常用的代码管理有SVN和GIt 如果还使用SVN的,建议尽早迁移到G ...

  7. GIT版本管理工具

    原文:http://blog.csdn.net/ithomer/article/details/7527877 Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介 ...

  8. Vagrant入门

    简单地说,Vagrant让我们可以通过代码的方式快速地.可重复地创建针对不同虚拟环境的虚拟机,包括Virtualbox.AWS.Docker等.它使得我们可以一次性地.自动创建多个环境相同的虚拟机,对 ...

  9. agile/scrum 如果一切都从解放前开始

    一个非常珍贵的机会,聚集了公司很多牛人,进行了一场发人深省的讨论.有一个话题我想拿出来和他家分享一下我的看法. 越来越不舒服的站会 站会是每天都在固定的时间.地点,大概持续15分钟左右(我们的小组都比 ...

随机推荐

  1. Node.js开发者最常范的10个错误

    目录 前言 1 不使用开发工具 1.1 自动重启工具 1.2 浏览器自动刷新工具 2 阻塞event loop 3 频繁调用回调函数 4 圣诞树结构的回调(回调的地狱) 5 创建一个大而完整的应用程序 ...

  2. PHP的pcntl多进程

    PHP使用PCNTL系列的函数也能做到多进程处理一个事务.比如我需要从数据库中获取80w条的数据,再做一系列后续的处理,这个时候,用单进程?你可以等到明年今天了...所以应该使用pcntl函数了. 假 ...

  3. 每天一个linux命令(48):watch命令

    watch是一个非常实用的命令,基本所有的Linux发行版都带有这个小工具,如同名字一样,watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行.在Linux下,watch是周期性的执行下个 ...

  4. Ubuntu14.04、win7双系统如何设置win7为默认启动项

    Ubuntu14.04.win7双系统如何设置win7为默认启动项 Ubuntu14.04.win7双系统设置win7为默认启动项方法: 在启动项选择菜单处记住windows 7对应的序号. 从上至下 ...

  5. 谈谈service层在mvc框架中的意义和职责

    mvc框架由model,view,controller组成,执行流程一般是:在controller访问model获取数据,通过view渲染页面. mvc模式是web开发中的基础模式,采用的是分层设计, ...

  6. Sql Server系列:Transact-SQL变量

    变量是Transact-SQL中由用户定义.可对其赋值并参与运算的一个实体,分为全局变量和局部变量.其中全局变量由系统自定义并维护,全局变量名称前面有@@字符,任何程序均可随时调用.局部变量名称前面有 ...

  7. Building OpenCASCADE on Debian

    Building OpenCASCADE on Debian eryar@163.com Abstract. When you are familiar with OpenCASCADE on Win ...

  8. 【转】SQL修改字段长度

    语法: alter table <表名> alter column <字段名> 新类型名(长度) 示例:假如有名T1,字段名F1,原来F1为varchar(3),现在要改为va ...

  9. Android之TabActivity的使用

    TabActivity实现多页显示效果 由于手机屏幕有限,所以我们要尽量充分利用屏幕资源.在我们的应用程序中通常有多个Activity,而且会经常切换显示,这样我们就可以用TabActivity来显示 ...

  10. 详解 ML2 Core Plugin(II) - 每天5分钟玩转 OpenStack(72)

    上一节我们讨论了 ML2 Plugin 解决的问题,本节将继续研究 ML2 的架构. ML2 对二层网络进行抽象和建模,引入了 type driver 和 mechansim driver. 这两类 ...