composer学习笔记


什么是composer?
composer相当于php包管理工具,他的主要作用类似于PHP的应用商店,在GitHub中的名字为composer。
什么是package,它与composer的关系?
package相当于composer的应用商店,composer把自己的应用商店起名叫做package。与composer的关系就是包含与被包含的关系。
把存在composer服务器的包下载到本地的工具。composer服务器上的资源从github上获取。
提交一个composer文件的步骤:
【1】composer init
初始化项目。
执行过程中,出现
Would you like to define your dependencies (require) interactively [yes]? 
这个composer是否依赖于某些第三方的库?即这个composer是否在搜索的时候搜某些关键字能被搜索出来。
初始化完成后,执行composer install安装这个composer包
【2】composer install
生成composer的配置文件。
【3】使用git工具将带有composer配置的项目提交到GitHub上
【4】进入composer的商店package,将这个项目的地址提交到package上(需要注册package账号),此时,在package中就可以搜索到这个包了。
默认composer是国外的服务器。一般情况下速度非常非常的慢(即使用了vpn)。幸运的是,有大神搭建了国内的package镜像,基本上同步速度也是即时的。不妨就启用这个国内镜像:
修改 composer 的全局配置文件(推荐方式)
打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
下载镜像:
composer create-project wyfblues/demo_composer d1  dev-master --prefer-dist
具体参数查阅composer中文网站手册。

注意,默认情况下,composer是不会自动同步git上的代码的。也就是说,如果不设置自动同步或者手动去同步,package上的代码是创建的时候git上的包代码。如果需要更新package的代码,需要手动同步或者设置自动同步。

composer 同步下载vendor的时候提示报错信息:
Could not fetch https://api.github.com/repos/jquery/jquery-dist, please create a GitHub OAuth token to go over the API rate limit
然后提示输入token。
解决办法:
    进入 https://github.com/settings/tokens 点击 「Generate new token」 新建一个 Token,选择默认新建就行,然后就会得到一个 Token,然后输入这个值就 OK 了。