mirror of
https://gitea.com/gitea/docs.git
synced 2026-11-08 02:50:31 +00:00
Add project workflow documentation (#308)
Documentation for https://github.com/go-gitea/gitea/pull/30205 --------- Co-authored-by: silverwind <[email protected]> Co-authored-by: silverwind <[email protected]> Co-authored-by: silverwind <[email protected]> Reviewed-on: https://gitea.com/gitea/docs/pulls/308 Reviewed-by: silverwind <[email protected]>
This commit is contained in:
1 parent
d301461648
commit
ee9e91cdeb
6 files changed
+273
No files matched your search
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"label": "專案",
|
||||
"position": 60,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"slug": "/usage/projects",
|
||||
"description": "使用專案看板規劃與追蹤工作"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
---
|
||||
date: "2025-11-25T18:58:22Z"
|
||||
slug: "project-workflows"
|
||||
sidebar_position: 1
|
||||
description: "透過事件驅動的篩選條件與動作,讓專案看板自動化。"
|
||||
---
|
||||
|
||||
# 專案工作流程
|
||||
|
||||
專案工作流程可讓專案看板自動化。當專案中的問題或合併請求觸發事件時,該事件的每個已啟用工作流程都會檢查篩選條件並執行動作。工作流程在 Gitea 中執行,不需要 runner。
|
||||
|
||||
## 編輯工作流程
|
||||
|
||||
1. 開啟專案並選取 **Workflows**。
|
||||
2. 在側邊欄選取事件。
|
||||
3. 設定篩選條件與動作,然後選取 **Save**。若要變更現有工作流程,請先選取 **Edit**。
|
||||
|
||||
一個事件可以有多個工作流程。**Clone** 會複製選取的工作流程,方便您調整後用於其他項目。**Disable** 會暫停工作流程並保留設定。**Remove** 會刪除工作流程。
|
||||
|
||||
## 事件
|
||||
|
||||
| 事件 | 執行時機 | 篩選條件 | 動作 |
|
||||
| --- | --- | --- | --- |
|
||||
| Item added to project | 項目加入專案或在專案中建立時 | Apply to、標籤 | Move to column、標籤、問題狀態 |
|
||||
| Item removed from project | 項目從專案移除時 | Apply to、標籤 | 標籤、問題狀態 |
|
||||
| Item reopened | 項目重新開啟時 | Apply to、標籤 | Move to column、標籤 |
|
||||
| Item closed | 項目關閉時 | Apply to、標籤 | Move to column、標籤 |
|
||||
| Item column changed | 項目移至另一欄時 | Apply to、欄、標籤 | 標籤、問題狀態 |
|
||||
| Code changes requested | 正式審查者要求修改合併請求時 | 標籤 | Move to column、標籤 |
|
||||
| Code review approved | 正式審查者核准合併請求時 | 標籤 | Move to column、標籤 |
|
||||
| Pull request merged | 合併請求合併時 | 標籤 | Move to column、標籤 |
|
||||
|
||||
## 篩選條件
|
||||
|
||||
未設定篩選條件的工作流程會對所有項目執行。
|
||||
|
||||
- **Apply to**:問題、合併請求或兩者。
|
||||
- **When moved from column**、**When moved to column**:項目離開或進入的欄。
|
||||
- **Only if it has labels**:項目必須具有所有選取的標籤。
|
||||
|
||||
## 動作
|
||||
|
||||
工作流程至少需要一個動作。動作依下列順序執行:
|
||||
|
||||
1. **Move to column**:將項目移至某一欄。
|
||||
2. **Add labels**、**Remove labels**:變更項目的標籤。
|
||||
3. **Issue state**:關閉或重新開啟項目。工作流程不會重新開啟合併請求。
|
||||
|
||||
工作流程所做的變更會在時間軸中顯示為「Project workflow」加上事件名稱,且不會觸發其他工作流程。專案已關閉或項目位於已封存的儲存庫時,工作流程不會執行。
|
||||
|
||||
## 權限
|
||||
|
||||
任何具有專案讀取權限的使用者都能檢視其工作流程。管理工作流程需要專案的寫入權限,以及:
|
||||
|
||||
- 儲存庫專案:該儲存庫的問題與合併請求的寫入權限。
|
||||
- 組織專案:組織擁有者或網站管理員身分。
|
||||
- 使用者專案:專案擁有者身分。
|
||||
|
||||
僅限公開儲存庫的存取權杖無法管理組織或使用者專案的工作流程。無論誰觸發事件,工作流程都會執行其動作。
|
||||
|
||||
## API
|
||||
|
||||
透過儲存庫(`/repos/{owner}/{repo}/projects/{id}`)、組織(`/orgs/{org}/projects/{id}`)或已驗證使用者(`/user/projects/{id}`)的專案路由管理工作流程:
|
||||
|
||||
| 方法 | 路徑 | 用途 |
|
||||
| --- | --- | --- |
|
||||
| `GET` | `.../workflows` | 列出工作流程 |
|
||||
| `GET` | `.../workflows/{workflow_id}` | 取得工作流程 |
|
||||
| `POST` | `.../workflows` | 建立工作流程 |
|
||||
| `PATCH` | `.../workflows/{workflow_id}` | 編輯工作流程,未提供的欄位保持不變 |
|
||||
| `DELETE` | `.../workflows/{workflow_id}` | 刪除工作流程 |
|
||||
|
||||
工作流程包含 `event`(`item_added_to_project`、`item_removed_from_project`、`item_reopened`、`item_closed`、`item_column_changed`、`code_changes_requested`、`code_review_approved` 或 `pull_request_merged`)、`enabled` 旗標、`filters`(`issue_type`、`source_column_id`、`target_column_id`、`label_ids`)與 `actions`(`column_id`、`add_label_ids`、`remove_label_ids`、`issue_state`)。每個事件僅接受[事件](#事件)中列出的篩選條件與動作。
|
||||
|
||||
## 範例
|
||||
|
||||
若要將新的錯誤回報送往分類處理,請為 **Item added to project** 建立工作流程:
|
||||
|
||||
- **Apply to**:Issues only
|
||||
- **Only if it has labels**:`bug`
|
||||
- **Move to column**:Triage
|
||||
- **Add labels**:`needs-triage`
|
||||
Reference in new issue
Block a user