誰かのプロジェクト全体を誤ってオーバーホールしました。要求をプルするための受け入れ可能な方法はありますか?


12

便利な中央機能を備えたGitHubで素晴らしいプロジェクトを見つけましたが、エラー処理、ロギング、構成、およびセットアップの「研磨」には大雑把です。このプロジェクトは5年間そのままで、わずか数百行のコードです。それでも、かなりの数のウォッチャーと少数のフォークに注意を向けることは十分に有用です。

私の使用には特定の追加が必要でしたが、その前にいくつかのクリーンアップを行いました。その後、エンジニアに少し夢中になり、1週間かけて、ログシステム、大量のログ、自動セットアップ、コードから外部構成ファイル(およびそれらを読み取るコード)に組み込まれた構成を追加しました。さらに、私が見つけたバグ修正もいくつかあります。

私の変更はすべて合理的/良いものであり、視聴者が使用できるようにする必要があると思います。しかし、多くのコミットがあり、レポジトリが元々持っていたのとほぼ同じ数です(この一般的なものを維持するために数を避けます)。さらに、git blameは、この(小さな!)コードベースのほぼすべての行に触れたことを示しています。私はプロジェクトの管理を求めているわけではありませんし、自分がやったことの信用を求めているわけでもありません。しかし、選択を考えると、私の未知のgithubの分岐点に隠れることなく、誰もがそれらの恩恵を受けることができるように、私の変更をマージしたいと思います。

以前にプルリクエストを送信したことはありませんが、それらは小さくてレビューしやすいはずです。しかし、ここで私は去り、多くの変革的な変化を遂げました。

コミットメントは非常にクリーンで、全体を通して歴史を慎重に扱っていました。しかし、それらの多くは必然的にそれ自体の上に構築されるため、それらを複数のブランチ/プルリクエストに分けるのは難しいでしょう。たとえば、構成の外部化はいくつかの準備的なクリーンアップに基づいて構築され、それらの構成を設定するためのセットアップが一部存在し、ログはセットアップで作成された外部構成によって有効化および構成されます。この巨大な錠剤をより美味しくするために私ができることをしてください、私はそれがどうなるかわかりません。いくつかのコミットを分割することもできますが、大規模なオーバーホールはまだ大きなものです。

誰かのプロジェクトを誤ってオーバーホールした場合、どうすればよいでしょうか?

これを行わず、自分の変更を自分のフォークに保持するように、レッスンを学ぶ必要がありますか?プルリクエストを行い、何が起こるかを確認する必要がありますか?説明で自分自身を説明する言葉をたくさん使うべきですか?特定の方法で提示する必要がありますか?

回答:


30

あなたが書いたようにプロジェクトが「5年手つかず」だった場合、誰かがコメントのタイプミスを修正したか、完全に書き直したかに関係なく、プルリクエストは受け入れられない可能性があります。このプロジェクトはおそらく元の著者によって放棄されたでしょう。

私が最初に試みることは、著者に連絡し、彼らがそれについてどう思うかを尋ねることです。彼らが妥当な時間内に応答しない場合は、フォークを単に公開して(ライセンスが許可していると仮定して)、改善した内容に関する要約を追加し、何が起こるかを見てみませんか?

他の人があなたの改善が彼らにとって有用であると思うなら、彼らはあなたのフォークを元のプロジェクトに有利な開始プロジェクトとして使うことを好むかもしれません。元の作者が元のプロジェクトを再び復活させる場合、元のプロジェクトとフォークを相互にマージするかどうかと、将来のメンテナーになる人を決定できます。

元の作者がアクティブなメンテナンスを実行する兆候を示さない場合、元のプロジェクトからフォークを完全に切り離すことを検討できます。この場合、このために独自の独立したリポジトリを設定します。元の作者にクレジットを与えることを忘れないでください、そして、これがプロジェクトのライセンスでカバーされることを確認してください。


2
現実チェックをありがとう。著者に連絡して、プロジェクトに関する彼の態度を感じてみます。
user1169420
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.