从自定义GitLab域安装时避免Composer供应商中的.git文件夹 [英] Avoiding .git folder in composer's vendor when installing from a custom Gitlab domain

查看:36
本文介绍了从自定义GitLab域安装时避免Composer供应商中的.git文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在GitLab管理的Git存储库上有一个symfony包。该捆绑包使用Composer添加到symfony,并指向GitLab作为附加存储库。

一切正常,相关性被完美跟踪,捆绑包确实按预期工作,但是,为了优化我的项目源代码,我希望避免将.git文件夹包括在Vendor/my-org/my-Bundle目录中。

这里是symfony项目的composer.json示例:

{
    [...]
    "require": {
        [...]
        "my-org/my-bundle": "dev-master"
    },
    "config": {
        "preferred-install": {
            "*": "dist"
        },
        "sort-packages": true
    },
    "repositories": [
        {
            "type": "vcs",
            "url": "https://mygitlab.mysite.com/author/my-bundle.git"
        }
    ]
}

和捆绑包的poser.json:

{
    "name": "my-org/my-bundle",
    "type": "symfony-bundle",
    "description": "blabla",
    "keywords": ["symfony", "bundle"],
    "license": "MIT",
    "authors": [
        {
            "name": "ME Myself",
            "role": "Developper"
        }
    ],
    "readme": "README.md",
    "require": {
        "php": ">=7.1.3",
        "symfony/security-bundle": "4.4.*",
        "symfony/config": "4.4.*",
        "symfony/dependency-injection": "4.4.*",
        "symfony/http-foundation": "4.4.*",
        "symfony/http-kernel": "4.4.*",
        "symfony/routing": "4.4.*",
        "symfony/event-dispatcher": "4.4.*",
        "symfony/property-access": "4.4.*",
        "symfony/ldap": "4.4.*",
        "psr/log": "^1|^2|^3"
    },
    "require-dev": {
        "phpunit/phpunit": "^7"
    },
    "suggest": {
        "symfony/phpunit-bridge": "^5.2"
    },
    "autoload": {
        "psr-4": {
            "Foo\Bar\": "src/Foo/Bar/"
        }
    }
}

其他信息:

  • 我尝试设置存储库类型(在项目编写器中设置为GitLab/GitHub),但两者都缺少驱动程序;只有Git有效。
  • 我尝试了命令composer install --prefer-dist,但没有成功(仍包含.git)。
  • 编写器版本:2.1.6
  • 用户UI下载zip/tar/.按钮提供不包含.git/.gitignore的存档。

推荐答案

您的域未被识别为GitLab域,然后包将被简单地克隆出Git库。

您应该将域配置为GitLab域,以便Composer知道使用Gtlab API。

除非配置其他域,否则只有gitlab.com被视为GitLab域。

https://getcomposer.org/doc/06-config.md#gitlab-domains

据我所知,配置应该在config.gitlab-domains内。类似于

{
    "config": {
       "gitlab-domains": [
         "mygitlab.mysite.com"
       ]
   }
}

这篇关于从自定义GitLab域安装时避免Composer供应商中的.git文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆