デベロッパーフロー
- プラン: Premium、Ultimate
- アドオン: GitLab Duo Core、Pro、またはEnterprise
- 提供形態: GitLab.com、GitLab Self-Managed
この機能の利用可否は、機能フラグによって制御されます。詳細については、履歴を参照してください。
デベロッパーフローは、イシューを実行可能なマージリクエストに変換するプロセスを効率化します。このフローには次の特長があります:
- イシューの説明と要件を分析します。
- 元のイシューにリンクされているドラフトマージリクエストをオープンします。
- イシューの詳細に基づいて開発計画を作成します。
- コードの構造または実装を作成します。
- コードの変更内容をマージリクエストに反映します。
このフローは、GitLab UIでのみ使用できます。
![note] デベロッパーフローは、サービスアカウントを使用してマージリクエストを作成します。SOC 2、SOX法、ISO 27001、またはFedRAMPの要件がある組織は、適切なピアレビューポリシーが整備されていることを確認する必要があります。詳細については、マージリクエストのコンプライアンスに関する考慮事項を参照してください。
前提条件
イシューからマージリクエストを作成するには、次の要件を満たしている必要があります:
- 明確な要件を持つ既存のGitLabイシューが存在する。
- プロジェクトのデベロッパーロール以上を持っている。
- 他の前提条件を満たしている。
- GitLab Duoサービスアカウントがコミットとブランチを作成できることを確認している。
- デベロッパーフローがオンになっていることを確認してください。
フローを使用する
イシューをマージリクエストに変換するには:
- 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
- 計画 > イシューを選択します。
- マージリクエストを作成するイシューを選択します。
- イシューヘッダーの下にあるGenerate MR with GitLab Duoを選択します。
- 自動化 > セッションを選択して、進捗状況を監視します。
- パイプラインが正常に実行されると、イシューのアクティビティーセクションにマージリクエストへのリンクが表示されます。
- マージリクエストをレビューし、必要に応じて変更を加えます。
ベストプラクティス
- イシューのスコープを適切に維持する。複雑なタスクは、より小さく、スコープが絞られた、アクション指向のリクエストに分割してください。
- 正確なファイルパスを指定する。
- 具体的な受け入れ基準を記述する。
- 一貫性を保つため、既存パターンのコード例を含める。
例
次の例は、マージリクエストの生成に使用できる、適切に作成されたイシューを示しています。
## Description
The users endpoint currently returns all users at once,
which will cause performance issues as the user base grows.
Implement cursor-based pagination for the `/api/users` endpoint
to handle large datasets efficiently.
## Implementation plan
Add pagination to GET /users API endpoint.
Include pagination metadata in /users API response (per_page, page).
Add query parameters for per page size limit (default 5, max 20).
#### Files to modify
- `src/api/users.py` - Add pagination parameters and logic.
- `src/models/user.py` - Add pagination query method.
- `tests/api/test_users_api.py` - Add pagination tests.
## Acceptance criteria
- Accepts page and per_page query parameters (default: page=5, per_page=10).
- Limits per_page to a maximum of 20 users.
- Maintains existing response format for user objects in data array.