美文网首页
单纯 git 实现公共代码库

单纯 git 实现公共代码库

作者: 懒人代码丶 | 来源:发表于2019-06-16 01:53 被阅读0次

    使用场景

    多个项目共同使用,例如数据库配置、项目常量、工具库。有些敏感信息不能提交到 packagist 类似公开的网站,需要自行搭建私人仓库,也可以直接使用私人 git 仓库作为公共代码包。

    公共代码项目结构

    • src : 代码存放目录
    • tests: 测试用例
    • compser.json : 代码库声明,如下示例
    {
        "name": "myapp/common",
        "version": "1.0",
        "description": "我的公共代码库",
        "type": "library",
        "authors": [
            {
                "name": "myapp",
                "email": "myapp@com"
            }
        ],
        "autoload": {
            "psr-4": {
                "MyApp\\common\\": "src/"
            }
        },
        "autoload-dev": {
            "psr-4": {
                "MyApp\\common\\test\\": "tests/"
            }
        },
        "require": {}
    }
    

    子项目引入

    使用 composer 管理,composer.json 格式如下

    {
      "repositories": [
        {
          "type": "vcs",
          "url": "http://github.com/myapp/common.git"
        }
      ],
      "require": {
        "myapp/common" : "1.0.1.x-dev"
      },
      "config": {
          "secure-http" : false
        }
    }
    

    注意事项

    • repositories 自定义资源库,执行 composer 下载依赖包时,会优先到该资源库查找资源包,不存在再到 packagist.org 等默认资源库查找。
    • repositoriesvcs 表示版本控制系统,url 表示版本控制系统的资源地址。
    • repositories.url 可以使用 ssh 也可以使用 http/https 格式,若使用 http 则需要配置关闭 secure-http
    • 引用项目使用公共代码库时指定版本,格式为 {公共代码库分支}.x-dev

    相关文章

      网友评论

          本文标题:单纯 git 实现公共代码库

          本文链接:https://www.haomeiwen.com/subject/glhwfctx.html