如何安装托管在私有 GitLab 实例上的 composer 包?

栏目: PHP · 发布时间: 8年前

内容简介:如何安装托管在私有 GitLab 实例上的 composer 包?

一般来说开源的 PHP 包都会放在 packagist.org , Composer 直接安装就行

私有包有以下几种安装方式

  • packagist.com 购买付费服务, 不用自己维护, 省心
  • 搭建 Satis 实例, 相当于搭建了私有的 packagist.org, 需要自己维护服务器
  • 购买了 GitHub 企业版 , 将包托管在企业版上
  • 搭建 GitLab 社区版 实例, 将包托管在这上面

可以根据各自情况选择合适的方案, 笔者在这篇文章中只讲解如何安装托管在私有 GitLab 实例上的包

环境信息

  • 假设私有 GitLab 实例网址为 http://git.demo.com
  • 要安装的包名为 demo/fly

配置 composer 以使用 GitLab API

因为网络原因, 项目里一般会把 vendor 目录也加入版本管理, 某个依赖如果有 .git 目录会造成依赖不会被加入到 git 中

Composer 支持使用 --prefer-dist 参数, 只下载相应的 zip 包, 不 clone 源码, 这样下载下来的依赖不会带有 .git 目录

但只有在使用 GitLab API 的前提下, --prefer-dist 参数才会生效, 否则下载下来的依赖还是会带有 .git 目录

修改 composer 全局 config

  • 文件路径: ~/.composer/config.json
  • 因为 git.demo.com 使用 HTTP 协议, 所以 secure-http 要设为 false
  • 设置 gitlab-domains , 告诉 Composer 相应的域名可以使用 GitLab API

内容修改为如下

{
 "config": {
 "secure-http": false,
 "gitlab-domains": [
 "git.demo.com"
 ]
 }
}

修改 composer 全局用户认证信息

  • 文件路径: ~/.composer/auth.json
  • 设置 token 后, 才有权限访问 GitLab API

http://git.demo.com/profile/personal_access_tokens 新建一个 personal access token

内容修改为如下

{
 "gitlab-token": {
 "git.demo.com": "your person access token in git.demo.com"
 }
}

安装步骤

demo/fly 为例

添加 repository

修改 composer.json , 添加如下代码

"repositories": [
 {
 "type": "vcs",
 "url": "http://git.demo.com/demo/fly.git"
 }
],

告诉 composer 去哪找 demo/fly 依赖


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

啊哈C!思考快你一步

啊哈C!思考快你一步

啊哈磊 / 电子工业出版社 / 2013-9 / 39.00元

这是一本非常有趣的编程启蒙书,全书从中小学生的角度来讲述,没有生涩的内容,取而代之的是生动活泼的漫画和风趣幽默的文字。并配合超萌的编程软件,从开始学习与计算机对话到自己独立制作一个游戏,由浅入深地讲述编程的思维。同时,与计算机展开的逻辑较量一定会让你觉得很有意思。你可以在茶余饭后阅读本书,甚至蹲在马桶上时也可以看得津津有味。编程将会改变我们的思维,教会我们如何思考,让我们的思维插上计算机的翅膀,以......一起来看看 《啊哈C!思考快你一步》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具