イシューからマージリクエストへのフロー
- プラン: Premium、Ultimate
- アドオン: GitLab Duo Core、Pro、またはEnterprise。
- 提供形態: GitLab.com、GitLab Self-Managed
- ステータス: ベータ
この機能の利用可否は、機能フラグによって制御されます。詳細については、履歴を参照してください。
イシューからマージリクエストへのフローは、イシューを実行可能なマージリクエストに変換するプロセスを効率化します。このフローの内容:
- イシューの説明と要件を分析します。
- 元のイシューにリンクされている下書きのマージリクエストを開きます。
- イシューの詳細に基づいて開発計画を作成します。
- コードの構造または実装を作成します。
- コードの変更でマージリクエストを更新します。
このフローは、GitLab UIでのみ使用できます。
前提要件
イシューからマージリクエストを作成するには、以下が必要です:
- 明確な要件を持つ既存のGitLabイシューが存在する。
- プロジェクトのデベロッパーロール以上を持っている。
- 他の前提条件を満たしている。
- GitLab Duoサービスアカウントがコミットとブランチを作成できることを確認している。
フローを使用する
イシューをマージリクエストに変換するには:
- 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。新しいナビゲーションをオンにしている場合、このフィールドは上部のバーにあります。
- Plan > イシューを選択します。
- マージリクエストを作成するイシューを選択します。
- イシューヘッダーの下にある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.