Composer下载私有GitHub存储库


Composer to download private GitHub repositories

我无法下载github私有repos与composer

php composer.phar update 

我得到以下错误

"https://api.github.com/repos/company/private1"文件不能已下载的HTTP/1.1 404 Not Found

,但我可以很容易地下载这些私人回购使用git clone

Composer.json

"repositories": [
    {
        "type": "vcs",
        "url": "git@github.com:company/private1.git",
        "options": {
            "ssh2": {
                "username": "githubusername",
                "pubkey_file": "/home/username/.ssh/id_rsa.pub",
                "privkey_file": "/home/username/.ssh/id_rsa"
            }
        }
    },
    {
        "type": "vcs",
        "url": "git@github.com:company/private2.git",
        "options": {
            "ssh2": {
                "username": "githubusername",
                "pubkey_file": "/home/username/.ssh/id_rsa.pub",
                "privkey_file": "/home/username/.ssh/id_rsa"
            }
        }
    }
],
"require": {
    "php": ">=5.4.3",
    "zendframework/zendframework": ">2.1.3",
    "doctrine/mongodb-odm": "dev-master",
    "doctrine/doctrine-mongo-odm-module": "dev-master",
    "company/private": "dev-master",
    "company/private2": "dev-master"
}

我试过了,但是没有用

SSH2 PECL也被启用。

我还创建了配置文件vim ~/home/.ssh/config

包含以下细节

host www.github.com
User githubusername
HostName github.com
IdentityFile /home/username/.ssh/id_rsa

但是我仍然无法使用composer下载私有repos

在您的编写器中。json文件,您不需要存储库部分中的选项,只需要typeurl

<

SSH/h2>

在GitHub上,在Profile...Settings下,有一个SSH and GPG Keys标签。这是您加载SSH密钥的公共端以从您的机器(存储私钥的地方)访问GitHub的地方。

请参阅他们的文档生成SSH密钥,该文档将引导您完成此过程。它还为密钥的私有端逐步完成SSH代理存储。

个人访问令牌

当您调用composer install时,如果您没有设置访问令牌,但是需要一个,Composer将提示您生成它和一个URL来完成此操作。你可以使用这个URL,它会生成一个曾经见过的API令牌,然后你把它加载到composer上以访问GitHub。来自GitHub网站:

个人访问令牌的功能与普通OAuth访问令牌类似。它们可以代替HTTPS上的Git密码。

如果您没有看到这个自动提示,那么如何手动执行:

  • 转到GitHub...Settings...Personal访问令牌
  • Generate new token
  • Token Description
  • 中输入对您有意义的内容
  • 选中repo复选框(它将自动选中下面的三个复选框)
  • 按页面底部的Generate token按钮
  • 复制token

回到服务器,告诉composer关于token的信息:

  • composer config -g github-oauth.github.com <token>
  • composer install