18

このcomposer.jsonでComposerを使用してパッケージをプルします。

{
    "require": {
        "torophp/torophp": "dev-master",
    },
}

実行composer installすると、このパッケージがGitHubから直接プルされているようです。

いくつかの小さな変更を加えて、githubにそのリポジトリのフォークを作成しました。作曲家にオリジナルの代わりにGitHubで自分のバージョンをプルさせる方法はありますか?

4

1 に答える 1

43

これがあなたの場合composer.json

"require": {
  "torophp/torophp": "dev-master"
}

それを変更して代わりにフォークを使用したい場合は、リポジトリをcomposer.json次のように追加するだけです。

"repositories": [
   {
     "type": "vcs",
     "url": "https://github.com/your-github-username/torophp"
   }
]

重要"require"パーツを変更しないでください。引き続き使用する必要がありtorophp/torophpます。

パーツを追加した後、 (または)を"repositories"実行すると、composerがフォークをダウンロードします(操作中に「installingtorophp / torophp」とエコーしますが)。composer updatecomposer.phar update


更新(2014年9月18日): コメントで@efesaidが述べたように:

パッケージがpackagistで公開されている場合は --prefer-source、VCSから強制的にインストールするオプションを追加する必要があります。


:HTTP(S)ソースからのプルに問題がある場合(つまり[RuntimeException] Failed to clone https://github.com/your-github-username/torophp, could not read packages from it、更新しようとしたときに発生する場合)、composer.json代わりにgitプロトコルを使用するようにを変更できます。これを行うには、次のように変更して、再度composer.json実行composer updateします。

"repositories": [
   {
     "type": "git",
     "url": "git://github.com/your-github-username/torophp.git"
   }
]

次に、リポジトリに必要なソースを使用していることを再確認するためにvendor/torophp/torophp実行します。git remote -v

そこから、フォークへの変更をコミットし、元の場所から更新できます(git pull origin master)。


更新:GitHubでプライベートリポジトリを操作するには、gitプロトコルを使用する必要があります。また、gitクライアント用のSSHキーをインストールしておく必要があります。

Composerリファレンス:VCSリポジトリからのパッケージのロード

于 2013-02-01T00:23:11.437 に答える