7

シナリオ: Symfony 2.2 を使用しています。必要なパッケージのリストには、私の github リポジトリの 1 つもあり、「TestLib」と呼びましょう。

Symfony の composer.json で github の URL を追加のリポジトリとして定義して、Github から Composer 経由で「TestLib」をダウンロードできることを知っています。

問題: 「TestLib」ディレクトリにローカルの .git ディレクトリがないため、「TestLib」リポジトリにコミットできません。作曲家はGithubからzipを取得していて、クローンを作成していないと思います。

私の質問は次のとおりです。Symfony の composer.json で、Composer が TestLib を複製するように指定する方法はありますか?

質問 2: 私のワークフローが間違っている可能性があります。このシナリオもある場合、どのように対処しますか?

4

3 に答える 3

13

パッケージ バージョンに追加@devすると、リポジトリも複製されます。

{
  "require": {
    'package': '*@dev'
  }
}

sourceでお好みでセットアップも可能ですcomposer.json

{
 "config": {
     "preferred-install": "source"
 }
}
于 2013-03-10T18:31:19.583 に答える
12

ベンダーに問題があることに気付いた場合、私が通常行うことは、rm -rf vendor/foo/barそれを削除してから、実行composer install --prefer-sourceして git リポジトリとして戻すことです。

于 2013-03-10T16:31:49.117 に答える
0

私がしたことは、私のgithubリポジトリをpackagist.orgに追加することでした。

composer require malhal/createdby dev-master --prefer-source

これは、require 行を composer.json に追加し、それを git リポジトリとして取得するように見えますが、残念ながら、これは 1 回しか機能しないため、新しいインストールで composer.json を再利用できず、require を削除する必要がある場合行してから、この同じコマンドをもう一度実行することを忘れないでください。このコマンドは、別の composer 更新を行う必要のない git リポジトリもダウンロードします。

于 2016-08-28T13:09:53.597 に答える