web-dev-qa-db-ja.com

プルリクエストを行わない場合、Githubでフォークする必要がありますか?

Arduino用のRFIDリーダーライブラリがあり、別のリーダーモデルに適合させたいと考えています。しかし、元のライブラリは、サポートするリーダーと同じ名前を持っているだけでなく、リーダーのモデル名がいたるところにあるため、私の適応は確実にマージされません。とは言っても、GitHubページで[フォーク]をクリックして元のライブラリへのリンクを維持する必要がありますか、それともコピーを作成して元の作成者を参照するだけですか(「フォーク」リンクなし)?

この質問では 、元のリポジトリが変更をマージする可能性が少しありました。これはそうではありません。

私がフォークした場合、Githubは常に「このブランチはncommits original_author:masterの背後にコミットします」というリポジトリに表示され、それが私が考えることができる主な欠点です。

1
Gutierrez PS

特にプルリクエストの機会がない場合は、フォークまたは新しいリポジトリの作成が詳細です。これらのオプションを比較する限り、フォークによってリポジトリの発見が容易になる一方で、リポジトリが独自のものではないことを示すことができます。

元のリポジトリからの更新が必要ない場合は、フォークしないでください。


また、特定のリポジトリから多くのコードを取得しているからといって、それがフォークである必要があるという意味ではありません。特に、プロジェクトがデプロイメントで元のプロジェクトを置き換えることができない場合は、フォークしないことをお勧めします。

明確にするために、次の例を検討してください。

私は多くの.Net機能を古いバージョンにバックポート/ポリリング/ブリッジしましたが、私のプロジェクトは新しいランタイムをインストールする代わりになると主張できますが、私はランタイムを作成していません。このように、私はモノをフォークしませんでしたが、私自身のことをしました。そうすることで、Monoで改善できるものを見つけ、それからforkして、それらの変更のためだけにプルリクエストを行いました。 私の貢献は、その後Microsoftコードに置き換えられました。結局、.Net Coreおよびその他のプロジェクトからコードを取得しました(すべてMITライセンスの下で)。


それは、プロジェクトの開始時にははっきりしていなかったと思います。たとえば、フォークすることを決定した後、別のパスに進むことができます。参照: GitHubリポジトリのフォーク依存関係の削除


しかしながら...

オリジナルのライセンスは何ですか? APIを著作権で保護する前例はありますが、GithubにいるといつでもAPIを再実装できると思います。オープンソースとフリーソフトウェアは同じではないことに注意してください。たとえば、元のリポジトリが共有ソースライセンス(ソースを表示できるが変更はできないライセンス)の下にある場合は、フォークしないでください。

1
Theraot