2016-08-12 4 views
1

自分のプロジェクトの依存関係にComposerを使用する方法を考え出しています。私はいくつかプライベート私のプロジェクトに含める必要があるGitHubのレポがあります。Composerで--prefer-distを使用すると、ソースが見つかりません。

たちは

  • Aを持っていると言うことができます - メインプロジェクト
  • B - 依存
  • C - Dependency2

は今、これがでJSONです:

{ 
    "name": "vendor/package", 
    "version": "1.0.0", 
    "require": { 
    "vendor/package" : "1.0.0", 
    "vendor/package2" : "1.0.0" 
    }, 
    "repositories": [ 
    { 
     "type": "vcs", 
     "url": "[email protected]:vendor/package.git" 
    }, 
    { 
     "type": "vcs", 
     "url": "[email protected]:vendor/package2.git" 
    } 
    ] 
} 

これはBのパッケージです(Cは非常に似ていますAR ofcourseの)

{ 
    "name": "vendor/package1", 
    "version": "1.0.0" 
} 

は今、私は、次のコマンドを実行した場合:

composer install -n --prefer-dist 

次のエラーが発生します。ソースのダウンロード

- Installing vendor/package (1.0.0) 
    Downloading: Failed  
    Failed to download vendor/package from dist: The "https://api.github.com/repos/vendor/package/zipball/419f5056bde4ff7d76a099648e60fc" file could not be downloaded (HTTP/1.1 404 Not Found) 
    Now trying to download from source 
    - Installing vendor/package (1.0.0) 
    Cloning 419f5056bde4ff7d48e60fc 

をしかし作業を行います。 〜/ .sshフォルダとGithubにSSH鍵をインストールしました。これは、ソースをダウンロードできるように動作しているようです。私はしかし、私はジップパッケージを得ることができないことに驚いています。誰かが私を正しい方向に向けることができますか?

グリーティング、

+0

個人リポジトリの問題は、私たちにとって何がうまくいかないのかわからないので、私たちのためにデバッグするのは非常に難しいです。 私自身もプライベートレポジトリを持っていないので、自分の状況を複製することはできません。 最も冗長な状態( '-vvv')で実行して、意味のある出力が得られるかどうか確認できますか? – alcohol

+0

ダウンロードhttps://api.github.com/repos/vendor/package/zipball/4e294157a40f12f59b9e8d3ef011be878fe89ea439 ダウンロード:失敗した 失敗しました:[作曲\ダウンローダの\ TransportException] 404:「https://api.github.com/ (http/1.1 404 Not Found) distからベンダー/パッケージをダウンロードできませんでした: "https://api.github.jpg/repos/vendor/package/zipball/4e294157a40f"ファイルをダウンロードできませんでした。com/repos/vendor/package/zipball/4e294157a40f12f57889ea439 "ファイルをダウンロードできませんでした(HTTP/1.1 404が見つかりません) ダウンロードソース - ベンダー/パッケージ(1.0.0)のインストール – David

+0

これは本当にすべてのものです。 – David

答えて

2

何らかの理由でAPI呼び出しが失敗しているようです。

それはプライベートリポジトリのためにあなたが設定された有効なOAuthのトーク​​ンが必要になることかもしれないが、何らかの理由でそれはありません。また

{ 
    "type": "vcs", 
    "url": "[email protected]:vendor/package.git", 
    "no-api": true 
} 

:あなたはあなたのリポジトリの定義を変更することで、これを無効にしてみてくださいすることができますComposerの最新バージョン/最新バージョンではこれを促すようには思われません。

は、OAuthのトーク​​ンを設定github.com/settings/tokens @ 1を作成し、そのようなあなたの設定に追加するには、次の

composer config -g github-oauth.github.com <oauthtoken> 

は私があなたのためにそれを解決し、これらのメソッドのどれお知らせください。

関連する問題