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. js中几种实用的跨域方法原理详解

    这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...

  2. 当前不会命中断点。源代码与原始版本不同 (VS2012)

    遇到“当前不会命中断点.源代码与原始版本不同”的问题. 在网上查的类似: 一般studio会提示将“工具”,“选项”,“调试”,“要求源文件与原始版本完成匹配”去掉勾.但是这个配置去掉治标不治本,错误 ...

  3. 预处理(防止sql注入的一种方式)

    <!--- 预处理(预编译) ---><?php/* 防止 sql 注入的两种方式: 1. 人为提高代码的逻辑性,使其变得更严谨,滴水不漏. 比如说 增加判断条件,增加输入过滤等,但 ...

  4. 基于redis实现可靠的分布式锁

    什么是锁 今天要谈的是如何在分布式环境下实现一个全局锁,在开始之前先说说非分布式下的锁: 单机 – 单进程程序使用互斥锁mutex,解决多个线程之间的同步问题 单机 – 多进程程序使用信号量sem,解 ...

  5. CSS3总结 (帅哥)

    第1章CSS3简介 如同人类的的进化一样,CSS3是CSS2的"进化"版本,在CSS2基础上,增强或新增了许多特性, 弥补了CSS2的众多不足之处,使得Web开发变得更为高效和便捷 ...

  6. LINQ系列:LINQ to SQL Where条件

    1. 单一条件查询 var expr = context.Products .Where(p => p.ProductName == "LINQ to SQL"); SELE ...

  7. 页面loading效果

    当网页太大,打开太慢的时候,为了增加良好的用户体验(不让用户眼巴巴的等,心中暗骂c,这么慢),我们需要加一个等待动画. 只需把以下代码加入页面中即可,图片可以根据自己的需求更换,更换图片之后需要改变l ...

  8. The network bridge on device VMnet0 is not running

    The network bridge on device VMnet0 is not running. The virtual machine will not be able to communic ...

  9. HTML中哪些标签的值会被提交到服务器呢?

    <form> <input name="">标签 <select name="">标签 <textarea name= ...

  10. vc下的静态链接库与动态链接库(一)

    一.静态库与动态库的区别 目前以lib后缀的库有两种,一种为静态链接库(Static Libary,以下简称“静态库”),另一种为动态连接库(DLL,以下简称“动态库”)的导入库(Import Lib ...