web-dev-qa-db-ja.com

リポジトリのサブセットをフォークする-ライセンスとエチケット

私は大規模なオープンソースプロジェクトに貢献しています。より多くの機能をサポートするために、そのプロジェクトのサブモジュールに大幅な変更を加えましたが、この時点で、さらなる改善は元のプロジェクトの範囲外になります。そのため、サブモジュールの関連ファイルのみを独自のリポジトリにプルし、これらの新機能を可能にするために大幅な書き換えを進めています。ファイル構造は、このサブモジュールが、元のサブモジュールを依存関係として、それ自体で動作できるようになっています。

私の質問は、私が従う必要のあるライセンス/エチケットの問題は何ですか?この時点で、コードベースには元のファイルの痕跡しか残っていませんが、それらは物事を始めるのに役立ちました。元のプロジェクトにBSDライセンスがある場合、フォークしたプロジェクトが準拠するには何をする必要がありますか?

3
jiminy_crist

BSDでライセンスされたソフトウェアでは、元の著作権表示をすべて保持している限り、独自のライセンスを自由に追加できます。これは、BSD-> GPLファミリーとBSD->プロプライエタリの両方から広範囲にわたって行われてきました。

エチケットは常に曖昧ですが、私は言うでしょう:

  • リポジトリにフォーク元のURL(つまり、法的な最小値以上のもの)が含まれていることを確認し、(ブランチフィルタリングを実行した場合は、回避できる場合は避けてください)スクリプトを作成/更新しますアップストリームからのリポジトリ(ブランチ名の代わりに正確なハッシュまたはタグを使用し、再現可能なリポジトリにはGIT_AUTHOR_DATE、GIT_COMMITTER_DATEなどを使用します)。
  • あなたは自分が存在すること、そしてあなたのスコープが何であるかを上流に非常に明確にします
  • 純粋にユーティリティ関数を変更または作成する場合は、アップストリームに役立つライセンスの下でそれらを保持します。
3
o11c