プラグインの特定のバージョンをチェックアウトするには?

app.yml の中で、特定のバージョンのプラグインをチェックアウトして再ビルドする方法はありますか?

私は master ブランチよりも古いブランチで作業しています。./launcher rebuild appを実行すると、私が制御できないプラグインの最新バージョンが取得されてしまいます。そのプラグインの最新バージョンは、古いバージョンの Discourse と互換性がありません。そのため、テスト環境でビルドが失敗してしまいます。

理想的には、他のプラグインと一緒に app.yml に以下のような記述をすることを考えています:

- git clone https://github.com/path/to/plugin.git?commit=ec64234359282

代替案でも構いません。そのバージョンのプラグインを使って Discourse をビルドできればよいのです。

それには、-b フラグのような標準的な git オプションを使用できます。

「いいね!」 3

残念ながら、このプラグインは私が探しているバージョンの命名されたブランチを提供していません。master から特定のリビジョン(コミットハッシュ)を取得しようとしています。-b オプションはコミットハッシュでは機能しないようです。

コマンドラインからは、git clone 後に git checkout を実行して必要なものを取得できます。これを app.yml で行う方法はありますか?

はい、@Falco さんの解決策は機能しましたが、回り道をする必要がありました。

  1. 元のリポジトリをフォークしました
  2. ローカルの開発マシンにクローンしました
  3. 目的のコミットからブランチを作成しました
    • git branch foo ec64ae8
  4. そのブランチを GitHub にプッシュしました
    • git push -u origin foo
  5. app.yml を以下のように更新しました
    • git clone -b foo git@github.com:my-repo.git

もっと簡単な方法があるはずだとは思いますが、これで目的は達成できました。方向性を示してくださった @Falco さん、ありがとうございます!

「いいね!」 4

はい、新しいプラグイン、特にチャットプラグインをテストしていますが、サイトで問題が発生したようです。以前インストールしたバージョンにロールバックする方法、または希望するコミットバージョンを手動で入力する方法があるか知りたいです。

今後、アップグレードダッシュボードに「元に戻す」ボタンのような機能が追加されることを期待していますが、現時点では、あなたが試したような、より力任せな回避策よりも速い方法があれば幸いです。

「いいね!」 1