如何强制 Composer 使用 https://而不是 git://?

2022-01-21 00:00:00 git github php composer-php

我有这样的事情

"repositories": [
    {
        "type": "package",
        "package": {
            "name": "myrepo",
            "version": "dev-master",
            "source": {
                "url": "https://github.com/me/myrepo.git",
                "type": "git",
                "reference": "master"
            }
        }
    },

但是当 Composer 拉取 repo 时,.git/config 中的遥控器(origincomposer)被设置为 git://github.com/me/myrepo.git.

But when Composer pulls the repo, the remotes (origin and composer) in .git/config are set up as git://github.com/me/myrepo.git.

[remote "origin"]
    url = git://github.com/me/myrepo.git
    fetch = +refs/heads/*:refs/remotes/origin/*
    pushurl = git@github.com:me/myrepo.git
[branch "master"]
    remote = composer
    merge = refs/heads/master
[remote "composer"]
    url = git://github.com/me/myrepo.git
    fetch = +refs/heads/*:refs/remotes/composer/*

我无法推送它,因为 Github 不支持 git://.我必须手动将其更改为 https:// 然后推送.我在 URL 中指定了 https://,但为什么不尊重呢?

I can't push to it, because Github doesn't work with git://. I have to manually change this to https:// and then push. I specified https:// in the URL, but why isn't this respected?

推荐答案

您可以使用以下命令更改 github 使用的协议:

You can change the protocol used for github with this command:

composer config --global github-protocols https

然后重新安装供应商应该做你想做的事.

Then re-installing vendors should do what you want.

相关文章