来自自己的分叉存储库的 Composer 依赖项 [英] Composer dependency from own forked repository

查看:25
本文介绍了来自自己的分叉存储库的 Composer 依赖项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有 gitlab 仓库 https://gitlab.com/ajkosh/yii2-admin下面是我的 composer.json:

<代码>{"name": "haruatari/yii2-module-app","description": "Yii2 上的空模块应用程序",最低稳定性":稳定","许可证": "麻省理工学院",作者":[{"name": "维克多·皮卡耶夫","email": "haruatari@gmail.com","主页": "http://haru-atari.com/about"}],存储库":[{类型":vcs","url": "git@github.com:ajkosh/yii2-admin.git"}],要求": {"php": ">=5.4.0","yiisoft/yii2": "2.0.15","yiisoft/yii2-bootstrap": "~2.0.0","yiisoft/yii2-swiftmailer": "~2.0.0","paulzi/yii2-materialized-path": "^2.0","kartik-v/yii2-widget-select2":"2.0.4","ajkosh/yii2-admin": "开发"},需要开发":{"codeception/codeception": "*","yiisoft/yii2-debug": "*","yiisoft/yii2-gii": "*","yiisoft/yii2-faker": "*"},配置":{外汇资产":{安装程序路径":{"npm-asset-library": "供应商/npm",凉亭资产库":供应商/凉亭"}},进程超时":1800},脚本":{post-create-project-cmd":["yii\composer\Installer::postCreateProject"]},额外的": {yii\composer\Installer::postCreateProject":{设置权限":[{"运行时": "0777","网络/资产": "0777","数据": "0777","数据/日志": "0777","数据/tmp": "0777","yii": "0755"}],生成CookieValidationKey":[配置/web.php"]}}}

我正在尝试从我自己的存储库中获取 yii2-admin,但是当我运行 composer update 时出现以下错误.

<块引用>

 问题 1- 在任何版本中都找不到请求的包 ajkosh/yii2-admin,包名可能有拼写错误.潜在原因:- 包名中的拼写错误- 根据您的最低稳定性设置,该软件包没有足够稳定的版本见<https://getcomposer.org/doc/04-schema.md#minimum-stability>更多细节.- 这是一个私人包,你忘记添加一个自定义存储库来找到它阅读 对于进一步的常见问题.

解决方案

您使用的包名称不正确.解析 URL 中的依赖包名称无关紧要,唯一重要的名称是 composer.json 中的包名称.所以 Composer 从你的 分叉读取 composer.json存储库,并找到名称mdmsoft/yii2-admin,因为您在fork后没有更改它.根本没有 ajkosh/yii2-admin.您应该在您的 fork 中更新 composer.json 中的包名称:

<代码>{"name": "ajkosh/yii2-admin","description": "Yii2 的 RBAC 身份验证管理器","keywords": ["yii", "admin", "auth", "rbac"],"type": "yii2-extension",...

在您的require部分使用源包名称:

要求":{..."mdmsoft/yii2-admin": "开发大师"},

I have gitlab repository https://gitlab.com/ajkosh/yii2-admin and below is my composer.json:

{
    "name": "haruatari/yii2-module-app",
    "description": "Empty module application on Yii2",
    "minimum-stability": "stable",
    "license": "MIT",
    "authors": [
        {
            "name": "Viktor Pikaev",
            "email": "haruatari@gmail.com",
            "homepage": "http://haru-atari.com/about"
        }
    ],
    "repositories": [
        {
            "type": "vcs",
            "url": "git@github.com:ajkosh/yii2-admin.git"
        }

    ],
    "require": {
         "php": ">=5.4.0",
        "yiisoft/yii2": "2.0.15",
        "yiisoft/yii2-bootstrap": "~2.0.0",
        "yiisoft/yii2-swiftmailer": "~2.0.0",
        "paulzi/yii2-materialized-path": "^2.0",
        "kartik-v/yii2-widget-select2":"2.0.4",
        "ajkosh/yii2-admin": "dev"
    },
    "require-dev": {
      "codeception/codeception": "*",
        "yiisoft/yii2-debug": "*",
        "yiisoft/yii2-gii": "*",
        "yiisoft/yii2-faker": "*"
    },
    "config": {
    "fxp-asset": {
      "installer-paths": {
        "npm-asset-library": "vendor/npm",
        "bower-asset-library": "vendor/bower"
      }
    },
    "process-timeout": 1800},
    "scripts": {
        "post-create-project-cmd": [
            "yii\composer\Installer::postCreateProject"
        ]
    },
    "extra": {
        "yii\composer\Installer::postCreateProject": {
            "setPermission": [
                {
                    "runtime": "0777",
                    "web/assets": "0777",
                    "data": "0777",
                    "data/log": "0777",
                    "data/tmp": "0777",
                    "yii": "0755"
                }
            ],
            "generateCookieValidationKey": [
                "config/web.php"
            ]
        }
    }
}

I am trying to fetch yii2-admin from my own repository but I am getting below error when I am running composer update.

 Problem 1
    - The requested package ajkosh/yii2-admin could not be found in any version, there may be a typo in the package name.

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.
 - It's a private package and you forgot to add a custom repository to find it

Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

解决方案

You're using incorrect package name. On resolving dependencies package name in URL is irrelevant, the only name what matters is package name in composer.json. So Composer reads composer.json from your forked repository, and finds name mdmsoft/yii2-admin, because you don't changed it after forking. There is no ajkosh/yii2-admin at all. You should either update package name in composer.json in your fork:

{
    "name": "ajkosh/yii2-admin",
    "description": "RBAC Auth manager for Yii2 ",
    "keywords": ["yii", "admin", "auth", "rbac"],
    "type": "yii2-extension",
    ...

Or use source package name in your require section:

"require": {
    ...
    "mdmsoft/yii2-admin": "dev-master"
},

这篇关于来自自己的分叉存储库的 Composer 依赖项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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