問題タブ [satis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
repository - composer ローカルリポジトリを設定 (satis)
ローカルリポジトリを設定したいので、satis を設定します。例として、SonataAdminBundle と KnpMenuBundle をロードしました。satis.json:
{"type": "vcs", "url": "https://github.com/sonata-project/SonataAdminBundle"},{"type": "vcs", "url": "https://github.com/KnpLabs/KnpMenuBundle"}
その後、私のプロジェクト composer で:
}
コンポーザーの更新を行うと、次のエラーが発生しました。
考えられる原因: - パッケージ名のタイプミス - あなたの最小安定度の設定によると、パッケージは十分に安定したバージョンで利用できませんhttps://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/を参照してください詳細については、ディスカッションを参照してください。
何をすればよいでしょうか ?
composer-php - packagist から Satis パッケージの依存関係をインストールする方法
私は自分のサーバーに Satis を正常にセットアップし、そこからパッケージを取り込むことができました。
ただし、これらのプライベート パッケージで必要な依存関係は、指定されたバージョンの制約ではなく、最先端のバージョンで常に複製されています。Satis は最新の開発バージョンのローカル ミラーを作成していると思います。ただし、ローカル ミラーは必要ありません。必要なのは、Packagist から直接インストールすることだけです。
では、Packagist からインストールされたプライベート パッケージに依存関係を持たせるために、プロジェクト / パッケージ / Satis をどのようにセットアップする必要がありますか?
ありがとう。
これは私の Satis ビルド ファイルです。
そして、これはプライベート パッケージを必要とするプロジェクトの composer.json ファイルです (パッケージにはタグ付きリリースはありません)。
そして、これはプライベート パッケージの composer.json です。
composer-php - 作曲家の満たされていない要件
作曲家のセットアップでは、 と が必要vendor/package-A
ですvendor/package-B
。
パッケージ B はパッケージ A に基づいて構築されており、composer.json で要件として A が定義されています。
基本パッケージ A を直接インストールすると問題なく動作します。その他の要件は Packagist から解決され、パッケージ自体はプライベート リポジトリから正しくプルされます。
ただし、パッケージ B のみをインストールすると (要件によりパッケージ A もプルする必要があります)、次のエラーが発生します。
どちらのパッケージにもタグ付きリリースはなく、dev-master バージョンで動作します。
私が見落としているものはありますか?
編集
ソリューションに興味がある人のために、これは以下の選択した回答から学んだことの要約です。
基本的に、dev-master の深い依存関係をインストールする方法は 3 つあります。おすすめ順:
すべてのリリースにタグを付け、どこでも dev-master の代わりにタグ付きのバージョン制約を使用します。(私は実際にこれをやった!)
アプリケーションので、dev で必要な対応するサブ依存関係
composer.json
のフラグを使用して、require キーを追加します。@dev
このようにして、基本的に、dev として使用される特定のサブ依存関係をホワイトリストに登録します。
アプリケーションのに、次のように キーとキーを
composer.json
追加します。minimum-stability
prefer-stable
この最後の方法では、安定性の制約を dev に下げますが、安定したバージョンが利用可能な場合は、代わりにそれを優先するようにも設定します。ほとんどの場合、これで目的の動作が生成されますが、奇妙な動作になる場合もあります。
php - 循環依存関係を満たす
複数のパッケージを含むプロジェクトがあります。各パッケージはプライベート git リポジトリにあります。
一部のパッケージには、相互に依存関係があります。
ここで、私の満足度http://codepen.io/anon/pen/wBOEQWページがどのように見えるかを確認できます。
project-xpto/core のクローンを作成し、composer の更新を実行すると、次のようになります。
➜ php-core git:(master) composer update パッケージ情報を含む composer リポジトリーをロードしています 依存関係を更新しています (require-dev を含む) 要件は、インストール可能なパッケージのセットに解決できませんでした。
詳細については。
- satis.json => http://pastie.org/private/s0e2rxtnvpv9g7rpp415a
- composer.json xpto-core => http://pastie.org/10062586
- composer.json xpto-event => http://pastie.org/private/stxe2sbwpja8088knrldq
- composer.json xpto-tool => http://pastie.org/private/11o9wv94kvfprl5wjfibrq
- composer.json xpto-activity-streams => http://pastie.org/private/plieipe2gco1yt4gs0jxg
すべての依存関係を解決し、すべて正常に動作することを想定していませんか?
私が間違っているのは何ですか?
他に何か必要な場合は、お尋ねください。ここで更新します。
composer-php - Composer は満足です。プライベート パッケージをビルドします。
Bitbucket には多くのプライベート リポジトリがあり、約 100 個のリポジトリ (+/-) があります。それらを構築するphp bin/satis build
時間は長く、約 3 分かかります。1 つのリポジトリを更新したり、ビルド時間を最適化したりするにはどうすればよいですか。config.json
ファイルに4000を超えるリポジトリが含まれているsatis構成を見たからです。これをすべて構築するのにどれだけの時間が必要か想像できません。
php - Satis は composer.json を読み取ることができますが、他のファイルをチェックアウトすることはできません
私の個人用 SVN サーバー (Linux、Svn、Apache 2、SSL、LDAP、DAV) で Satis を試したところ、問題なく動作しました。会社のSVNサーバー(Windows、Visual SVN、SSL)で動作させようとしています。
どちらの場合も、Satis は Linux で動作します。私のはUbuntuで、私の会社はCentOsです。
私の会社の Satis インスタンスでは、リポジトリを参照でき、プロジェクトの composer.json を取得できますが、composer.json と同じレベルでプロジェクト自体を取得することはできません。
satis.json の匿名化されたバージョンは次のとおりです。
プロジェクトの composer.json の匿名化されたバージョンは次のとおりです。
Satis を実行する方法は次のとおりです。
そして最後に、これが Satis の匿名化された冗長な結果です:
[RuntimeException]
パッケージをダウンロードできませんでした。svn: OPTIONS de ' https://my-other-server.net/svn/project/trunk ': Échec à l'autorisation ( https://my-other-server.net )
その他の要素 :
- デバッグ中、実行時と同様に、私は Satis サーバーの root です。
- rm -rf /root/.composer を試してみました
- Visual SVN で my-readonly-username に完全な権限を与えようとしました
- もっとコーヒーを飲んでみました
これは何も変えませんでした(コーヒーを除いて)。
ssh-keys - Satis - git サーバーへの SSH キーを指定する
次のように指定された satis.json ファイルがあります。
次に、次のコマンドを実行して、satis を更新しようとします。
これは、公開鍵ファイルと秘密鍵ファイルを指定したという事実を完全に無視し、引き続きパスワードを要求します。動作するたびに手動でパスワードを差し込むと。sshキーを移動してオプションパラメータを削除する.ssh/id_rsa
と.ssh/id_rsa.pub
、それも機能します。
質問
1 つのキーに依存するのではなく、リポジトリごとに異なるキーを使用できるように、リポジトリごとにキー ファイルを正しく指定するにはどうすればよいですか?.ssh/id_rsa