环境windowsnginxphpcomposer安装拉取satis工程包,拉取工程依赖composercreate-projectcomposer/satis--stability=devcdsatiscomposerinstall配置修改satis/config.json文件,文件内容如下{"name":"composerlocalwarehouse","homepage":"http://packages.example.org",//访问域名"repositories":[//要拉包的仓库地址{"type":"vcs","url":"https://github.com/test-lin/db.git"},{"type":"vcs","url":"https://github.com/test-linlin/queue.git"},{"type":"vcs","url":"https://github.com/test-lin/cache.git"},{"type":"vcs","url":"http://192.168.6.251:3000/php/xjwSpider.git"}],"require":{//拉取到本地的包文件注意:不会包含package依赖项“test-lin/db”:“*”,“test-lin/queue”:“*”,“test-lin/cache”:“*”,“php/xjwSpider”:“*”},“存档“:{“目录”:“dist”,“格式”:“tar”,“prefix-url":"http://packages.example.org"//*这个参数是当前项目的域名,作用是压缩zip包直接下载包文件}}拉包到本地仓库web/为本地仓库的访问地址。phpbin/satisbuildconfig.jsonweb/如果需要定时更新,需要配置定时任务定时更新设置本地仓库nginx设置虚拟主机服务器{listen80;服务器名称packages.example.org;根/var/www/satis/web;索引index.phpindex.html;位置~*\.php${包括fastcgi_params;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;在json文件中加入如下jsonpull即可获取本地库。如果本地库不存在而有网络,就会到网络上去获取。repositories参数可以设置多个{"repositories":[{"type":"composer","url":"http://packages.example.org"}]}FQA1.githubpackages需要配置tokenCouldnotfetchhttps://api.github.com/repos/test-lin/db/git/refs/heads?per_page=100,请创建GitHubOAuthtoken越过APIratelimitHeadhttps://github.com/settings/tokens/new?scopes=repo&description=Composer+on+packages.example.org+2018-06-28+0310检索令牌。它将存储在“/home/vagrant/.config/composer/auth.json”中以供Composer将来使用。解决方法:根据命令行提示访问https://github.com/settings/t...。复制代币描述文本框中的内容,拉至页面底部。点击generatetoken,将复制的内容粘贴到命令行中。2.私包不能拉。解决方法:在本地生成sshkey,在平台上配置,拉取项目。pullssh-keygen-trsacat~/.ssh/id_rsa.pubwithoutsecret以gogs为例3.Composer不支持http你的配置不允许连接http://192.168.6.251:3000/php/xjwSpider.git.有关详细信息,请参阅https://getcomposer.org/doc/06-config.md#secure-http。解决方法:composerconfig-gsecure-httpfalse4。拉包composer.json配置错误[Composer\Repository\InvalidRepositoryException]在http://192.168.6.251:3000/php/xjwSpider.git的任何分支或标签中找不到有效的composer.json,无法从中加载包。解决方法:确保项目根目录下有composer.json。名称需要在composer.json中设置
