web-dev-qa-db-ja.com

既存のプロジェクトの完全な書き直しをリリースするための適切なエチケットは何ですか?

オープンソースの世界は初めてです。私が取り組んでいるプロジェクトはGithubにあります。 (参照用)私が取り組んでいるプロジェクトは、Plex Media Serverのプラグインです。プラグインをPlexに送信して、「アプリストア」に含まれるようにする予定です。今私の質問に。

私が最初に始めたとき、私は私が欲しかったもののいくつかをするがあまりうまくいかない古い半放棄されたプラグインを見つけました。私はそのレポに貢献することから始めました。現在の所有者は忙しくてもういじくり回すことができないと言ったので、私はすぐにリポジトリに対する完全な権限を持つ共同編集者になりました。しかし、コードをさらに掘り下げ始めたとき、それが無駄であることに気付きました。既存のコードベースはひどいものであり、それを修正する効率的な方法はありませんでした。ゼロから始めただけです。新しいプラグインで使用した唯一のコードは、最初にコミットしたコードです。

これでプロジェクトをリリースする準備ができました。しかし、私はこれをどうやってやるかについて確信が持てません。私のオプションは次のとおりです。

  1. 新しいレポを作成し、既存のものを忘れてください。以前のリポジトリやその貢献者についても言及すべきかどうかはわかりません。私はそのコード/リソースを使用せず、まったく新しいコードベースを作成しました。プラグインは古いプラグインと同じことをいくつか実行しますが、まったく新しい方法でより効率的な方法で実行します。

  2. 既存のリポジトリをフォークし、既存のコードを削除して、新しいコードをコミットします。私はGitを初めて使用するので、それが可能かどうかはわかりません。

  3. 私は既存のリポジトリに変更をコミットし、現在の貢献者がどのように言っているかを確認します。

3つのオプションのうち、私は最初のものに強く傾いています。だが!私はオープンソースを初めて使用するので、適切なエチケットに従って作業を行っていることを確認したいと思います。最初のプロジェクトを目の前で爆破して災害になりたくありません。オプション2は悪くないように聞こえますが、そうするべきかどうかはわかりません。履歴と差分がどのように機能するかわかりません。私たちが話しているのは、せいぜい500〜1000行のコードだけです。したがって、それは巨大なコードベースではありません。

あなたが提供できる任意の入力をありがとう!

12
Matt Keller

それはすべて新しいコードなので、古いプロジェクトのコミット履歴は実際には無関係であるため、私は#1を使用する傾向があります。しかし、READMEに「...のアイデアに基づいて」に沿って何かを追加するのは良いことです。

私(または私たちのアルゴリズム)がどこから来たのかを認めるのが大好きです。歴史の霧を振り返ってみると、私たち全員が前に来た人々の肩の上に立っていることがわかります—all。たとえば、私は1980年代に類似検索エンジンを開発して販売しましたが、一部の人にとってはかなり過激なように見えました(当時のブールは王様でした)。 しかし、私が使用していたアルゴリズムの中心は、コーネルで20年前に Gerard Salton によって開始された作業に基づいていました。

13
Peter Rowell