ホームページ > バックエンド開発 > PHPチュートリアル > オープンソースへの貢献:ゲートキーパーのケーススタディ

オープンソースへの貢献:ゲートキーパーのケーススタディ

Joseph Gordon-Levitt
リリース: 2025-02-15 09:20:12
オリジナル
273 人が閲覧しました

オープンソースプロジェクトに貢献:実用的なケース

この記事では、実用的なケースを通じてオープンソースプロジェクトにコードを提供する方法を詳細に説明します。ゲートキーパーライブラリを例として、カウント機能を追加し、プロジェクト所有者との通信、コード実装、テスト、プルリクエストの送信など、プロセス全体を徐々に実証します。

GateKeeper Libraryの紹介

GateKeeperは、ユーザー登録、認証、および認証のためのPHPライブラリです。これにより、メインアプリケーションから完全に切り離されるため、拡張と変更が容易になります。

カウント関数を追加

現在、データベース内のユーザーの総数を取得するには、GateKeeperが最初にすべてのユーザーレコードを取得し、次にSQLクエリをカウントするか、または手動で書き込む必要があります。これを改善するために、アダプターインターフェイスにカウント機能を追加して、ネイティブにし、将来他のデータベースエンジンを追加する準備をします。

ステップ1:プロジェクト所有者と通信

貢献を開始する前に、最初にプロジェクトの所有者と通信して、機能が計画されているかどうか、それが必要かどうかを確認します。通常、プロジェクトの問題でそれを提案することのみが可能です。

ステップ2:フォーク、クローン、テスト

最初に、自分のgithubリポジトリへのフォークプロジェクト。次に、クローンがローカルに移動し、依存関係をインストールしてテストを実行します。

すべてのテストに合格する必要があります。その後、開発するための新しいブランチを作成します:
git clone <你的fork地址>
cd gatekeeper
composer install
vendor/bin/phpunit
ログイン後にコピー

git checkout -b "feature-count"
ログイン後にコピー
ステップ3:アクションプラン

GateKeeperは現在、MySQLデータベースのみをサポートしています。次のセクションを変更する必要があります

:抽象データソースクラス
  • Gatekeeper/DataSource:実際の方法を含むmysqlデータソース
  • DataSource/MySQL:他の貢献者がカウント方法を追加する必要があることを知っているように、スタブを更新します
  • GateKeeperはMagic Static Callsを使用してエンティティを作成、検索、更新、削除するため、DataSource/Stub新しいカウントプロセッサも必要です。

ステップ4:コード実装

    静的コールの委任:
  1. ブロックを追加して、新しいカウントプロセッサに静的呼び出しを委任します。同時に、静的プロパティを更新します。 Gatekeeper::__callStatic elseif $actions

  2. CREATE Count Processor:ファイルを作成し、Count Processorのロジックを作成します。これは、プロセッサの作成に似ていますが、カウント操作を実行します。
  3. Psecio/Gatekeeper/Handler/Count.phpDataSourceとStubを変更します:

  4. メソッド署名を
  5. および抽象クラスに追加します。

    Psecio/Gatekeeper/DataSource/Stub.phpcountMySQLデータのカウント方法を実装します。ソース:

    MySQLの関数を使用してカウントします。

Contributing to Open Source: Gatekeeper Case Study

Contributing to Open Source: Gatekeeper Case Study

Contributing to Open Source: Gatekeeper Case Study

Contributing to Open Source: Gatekeeper Case Study

Contributing to Open Source: Gatekeeper Case Study

ステップ5:テスト

新しいプロジェクトを作成し、Composerを使用して変更されたGateKeeperライブラリをインストールし、テストを実行します。このテストでは、すべてのユーザーのカウント、条件に基づいてユーザーをカウントするなど、さまざまなシナリオをカバーする必要があります。

ステップ6:プルリクエストを送信

コードを独自のフォークリポジトリに送信し、プロジェクト所有者にコードレビューを送信するためのプルリクエストを作成します。

概要

この記事では、特定のケースを通じてオープンソースプロジェクトにコードを提供するプロセスを詳細に紹介します。このケースは比較的単純ですが、オープンソースプロジェクトに貢献するほとんどのステップをカバーし、オープンソースプロジェクトに参加したい開発者に適切なリファレンスを提供します。 テストと明確なコミュニケーションが貢献を成功させるための鍵であることを忘れないでください。

以上がオープンソースへの貢献:ゲートキーパーのケーススタディの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート