1

Orchard CMSを使用しているプロジェクトに取り組んでいます。

CMS 用に独自のモジュールとテーマをいくつか作成し、Orchard ソースにもいくつかのコード変更を加える必要がありました。もちろん、これはあまり良い方法ではありません。これらの変更は、CMS などをアップグレードすると消えてしまうからです。ただし、デフォルトの機能は顧客の希望どおりに機能しなかったため、当時はこれらの変更を行うことは避けられませんでした。

現在、これらの変更はすべて古いバージョンの 1.5.1 で行われているため、新しいバージョン (現時点では 1.6) に移行する必要があります。これを行うと、Orchard ソースに加えたすべての変更が失われます。

デフォルトのソースに加えたすべての変更を 1 つの変更セットにまとめたので、新しいバージョンの CMS にそれらをマージするのが少し簡単になりました。ただし、これは私の意見では本当に良いワークフローではありません。

プロジェクトをフォークしてフォークで変更を加えることができますが、フォークをアップグレードするときにすべての変更をマージする必要があるため、アップグレードするときに同じ問題が発生します。プル リクエストを作成することも実際にはオプションではありません。変更がマスター リポジトリに反映されないか、すべてのユーザーが変更を気に入らない可能性が高いためです。

このプロジェクトで使用できる他の一般的な方法はありますか?

注:現在、私が取り組んでいるプロジェクトについてこれを求めていますが、プロジェクトのソースを変更する必要があり、それでも取得したいOSSプロジェクトで一般的にどのように作業するかを知りたいです久々に最新版。

4

1 に答える 1

2

Orchardリポジトリのクローンを作成している限り、いつでもそこから変更をプルできます。最新のマージ以降にオーチャードリポジトリでも変更されたファイルを変更した比較ツールを使用して、いくつかの競合を解決する必要がある場合があります。しかし、それは比較的痛みがありません。

私は自分のリポジトリのコピーをbitbucketに保存し、新しいバージョンがリリースされたら果樹園のリポジトリからプルします。通常、ソリューションファイルの競合を解決する必要があります。また、あちこちでいくつかの問題を解決する必要があります。これらの競合が解決されると、更新するたびに再度対処する必要はありません。これは、あなたとOrchardの両方が変更しているファイルがある場合にのみ発生します。(ソリューションファイルのように)

于 2012-11-25T16:59:19.367 に答える