回答:
MITライセンスとGPLの主な違いは、GPLが行うのに対して、MITは修正をオープンソースにする必要がないということです。
正しい-一般的に。あなたはしていない持っているあなたがGPLを使用している場合は、オープンソースに変更を。配布していない限り、変更して独自の目的に使用できます。しかし...配布した場合、GPLコードを使用しているプロジェクト全体も自動的にGPLになります。つまり、オープンソースである必要があり、受信者はあなたと同じ権利をすべて取得します。つまり、向きを変えて配布し、変更し、販売することができます。これには、独自のコードが含まれるため、もはや独占的である-それはオープンソースになる。
MITとの違いは、MITライセンスコードを使用する独自のコードを実際に配布しても、コードをオープンソースにする必要がないことです。コードが暗号化されているか、バイナリであるクローズドアプリとして配布できます。MITライセンスの通知が含まれている限り、MITライセンスのコードを含めて暗号化できます。
GPLはMITライセンスよりも制限的ですか?
はい、とてもそうです。
GPLライセンスコードをMITライセンス製品に含めることはできますか?
あなたはできる。GPLはフリーソフトウェアであり、MITも同様です。どちらのライセンスも、「include」が常に双方向であるため、コードをまとめることを制限しません。
結合された作品(つまり、2つ以上の作品が1つの作品を形成する)の著作権では、1つの作品が他の作品よりも「大きい」かどうかに関係なく、大きな違いはありません。
したがって、MITライセンス製品にGPLライセンスコードを含める場合、同時にGPLライセンスコードにもMITライセンス製品を含めます。
セカンドオピニオンとして、OSIは両方のライセンス(MITおよびGPL)について次の基準(詳細)をリストしました。
どちらも組み合わせ作品の作成を可能にします。これはあなたが求めていたものです。
2つの作品を組み合わせることが派生物と見なされる場合、これは両方のライセンスによっても制限されません。
また、どちらのライセンスもソフトウェアの配布を制限していません。
MITライセンスとGPLの主な違いは、GPLが行うのに対して、MITは修正をオープンソースにする必要がないということです。
GPLでは、変更を加えたという理由だけで変更をリリースする必要はありません。それは正確ではありません。
これをGPLの下でのソフトウェアの配布と混合するかもしれませんが、これはあなたが直接尋ねたことではありません。
それは正しいですか-GPLはMITライセンスよりも制限的ですか?
これは私がそれを理解する方法です:
ディストリビューションが重要である限り、パッケージ全体をGPLの下に置く必要があります。パッケージ内のMITコードは引き続きMITの下で使用できますが、GPLは、より高い権限によって制限されない限り、パッケージ全体に適用されます。
「制限的」または「より制限的」/「より制限的でない」は、視点に大きく依存します。ソフトウェアユーザーにとって、MITはGPLで利用可能なソフトウェアよりも制限されたソフトウェアになる可能性があります。そのユーザーは具体的にはMITをより制限的に呼ぶでしょう。そう言うのは主観的なもので、人によって答えは異なります。
異なるライセンスの制限について話すのは主観的なだけなので、代わりに達成したいことについて考える必要があります。
あなたが作者である限り、あなたが決めることができます。
したがって、誰がどのライセンスを選択しているかに関係なく、これまでで最も制限的な人物は作者です。
あなたは、GPLがMITライセンスよりも制限的であることは正しいです。
MITライセンス製品にGPLコードを含めることはできません。GPLとMITコードを組み合わせた組み合わせ作品を配布する場合(「単なる集計」などの特定の状況を除く)、その配布はGPLに準拠している必要があります。
GPL製品にMITライセンスコードを含めることができます。結合されたすべての作業は、GPLに準拠した方法で配布する必要があります。コードのMIT部分に変更を加えた場合、GPLおよびMITコードを含むアプリケーションを配布する場合、それらの変更のソースを公開する必要があります。
あなたがGPLコードの著作権所有者であれば、もちろんそのコードをMITライセンスの下でリリースすることを選択できます。その場合、それはあなたのコードであり、好きなだけ多くのライセンスの下で公開できます。
IANALですが、私が見ると...
GPLコードとMITコードを組み合わせることができますが、GPLは汚染されています。つまり、パッケージ全体がGPLの制限を受けます。これはより制限的であるため、商用(またはクローズドソース)ソフトウェアでは使用できなくなります。これは、MIT / BSD / ASLプロジェクトがある場合、GPLコードに依存関係を追加したくないことも意味します。
GPL依存関係を追加してもコードのライセンスは変更されませんが、プロジェクトのアーティファクトを使用してユーザーが実行できる操作が制限されます。これは、ASFがプロジェクトのGPLコードへの依存を許可しない理由でもあります。