web-dev-qa-db-ja.com

パッケージのmasterブランチの最新のコミットをGitHubからダウンロードするには、Composerを取得するにはどうすればよいですか?

取得しようとしていますComposer Behat/MinkSelenium2Driverパッケージの最新のコミットをダウンロードしてください。その特定のレポにはmasterブランチしかありません。ファイルを削除するなど、考えられるすべての方法を試しました。そして、それを機能させるためにそれらを引き戻すことができますが、機能しません。

最新のコミット済みファイル、または少なくとも以下にリストしたコミットのファイルを取得するにはどうすればよいですか?

具体的には、このコミットを取得したい: https://github.com/Behat/MinkSelenium2Driver/commit/2e73d8134ec8526b6e742f05c146fec2d5e1b8d6

ありがとう、パトリック

39
Patrick

リポジトリのヘッドを取得する方法は1つしかありません。

"require": { "behat/mink-Selenium2-driver" : "dev-master" }
"minimum-stability": "dev"

まあ、少なくとも2つの方法:

"require": { "behat/mink-Selenium2-driver" : "dev-master as 1.1.x-dev" }
"minimum-stability": "dev"

おそらく少なくとも3つの方法:

"require": { "behat/mink-Selenium2-driver" : "dev-master#2e73d8134ec8526b6e742f05c146fec2d5e1b8d6" }
"minimum-stability": "dev"

そのリポジトリは実際にはmasterブランチを1.1.x-devとしてエイリアスしているため、これは他のすべてのパッケージに影響を与える最小の安定性なしでも機能します。

"require": { "behat/mink-Selenium2-driver" : "1.1.*@dev" }
58
Sven

Masterブランチを指定するだけです:

composer require --dev behat/mink-Selenium2-driver:dev-master

PS:--devは単にテスト/開発の要件であることを指定するためのものであり、おそらくあなたが望むものです。

7
Berend de Boer

私たちの場合、以前の答えはどれもうまくいきませんでした。それは単純なものであることが判明しました:

ComposerはROOT composer.jsonのリポジトリ属性のみを使用します

https://getcomposer.org/doc/04-schema.md#repositories

私たちの場合、推移的な依存関係の1つのdev-masterから最新のコミットを取得しようとしました。 githubとpackagistの間のフックに何らかの問題があり、通常のように動作しなかったため、トップの代わりに間違ったcomposer.json(依存関係を保持するライブラリの1つ)を編集していることに気付くまでに数時間かかりましたインストールするレベルのcomposer.json。

0
lmsurprenant

最良の答えは、最小安定度を安定したままにすることだと思います。

"minimum-stability" : "stable"

次に、「必須」セクションで「dev-master @ dev」を指定します

"require" : {
  "ResistFascism" : "dev-master@dev"
}

または、マスターを使用せずに私が行うことを行うことができますが、自分のブランチを作成します。したがって、masterブランチからResistFascismパッケージを実行する代わりに、composer.jsonでdevブランチを指定します。

"require" : {
  "ResistFascism" : "~1.2.1@dev"
}

私はすべての外部パッケージを安定版に保持するのが好きです。なぜなら、それは私が本番環境で実行しているからです。しかし、私は頻繁に開発版で自分のパッケージを管理しています。しかし、マスターも使用できます。個人的な好みです。

0
Halfstop