模板倉庫
自 Gitea 1.11
起,您可以創建模板倉庫。
創建基於模板的倉庫時,您可以複製其大部分內容,甚至自動注入變量。
默認情況下,不會在任何文件中展開變量。
只有包含在 .gitea/template
文件中的模式內的文件才會被檢查是否包含變量。
創建模板時,除 .gitea/template
文件外,所有文件都包含在內。
Gitea 使用 gobwas/glob 進行其 glob 語法。
它與傳統的 .gitignore
非常相似,但可能存在細微差異。
示例 .gitea/template
文件
所有路徑均相對於倉庫的基礎
# 展開倉庫中任何位置的所有 .go 文件
**.go
# 文本目錄中的所有文本文件
text/*.txt
# 特定文件
a/b/c/d.json
# 大小寫均可匹配的批處理文件
**.[bB][aA][tT]
變量展開
在上述 glob 匹配的任何文件中,以下變量將被展開。
匹配的文件名和路徑也可以展開,並且經過保守的清理以支持跨平台文件系統。
您可以通過在變量前加上 $
或將其括在 ${}
中來使用變量,因此 $VAR
和 ${VAR}
都會在此位置插入 VAR
的值。
要轉義展開,請使用 $$
,例如 $$VAR
或 $${VAR}
。
這些是 Gitea 目前識別的變量:
變量 | 展開為 | 可轉換 |
---|---|---|
YEAR | 生成倉庫的年份(即 2024 ) | ✘ |
MONTH | 生成倉庫的月份(即 03 ) | ✘ |
MONTH_ENGLISH | 月份,但用英文表示(即 March ) | ✓ |
DAY | 生成倉庫的日期(即 02 ) | ✘ |
REPO_NAME | 生成倉庫的名稱 | ✓ |
TEMPLATE_NAME | 模板倉庫的名稱 | ✓ |
REPO_DESCRIPTION | 生成倉庫的描述 | ✘ |
TEMPLATE_DESCRIPTION | 模板倉庫的描述 | ✘ |
REPO_OWNER | 生成倉庫的所有者 | ✓ |
TEMPLATE_OWNER | 模板倉庫的所有者 | ✓ |
REPO_LINK | 生成倉庫的 URL | ✘ |
TEMPLATE_LINK | 模板倉庫的 URL | ✘ |
REPO_HTTPS_URL | 生成倉庫的 HTTP(S) 克隆鏈接 | ✘ |
TEMPLATE_HTTPS_URL | 模板倉庫的 HTTP(S) 克隆鏈接 | ✘ |
REPO_SSH_URL | 生成倉庫的 SSH 克隆鏈接 | ✘ |
TEMPLATE_SSH_URL | 模板倉庫的 SSH 克隆鏈接 | ✘ |
轉換器 🤖
自 Gitea 1.12.0
起,表中標記為可轉換的變量還具有應用了給定轉換器的替代版本。
可以通過將轉換器名稱附加到變量名稱來調用轉換後的變量。
例如,要獲取 PASCAL
大小寫的 REPO_NAME
,您應該使用變量 ${REPO_NAME_PASCAL}
。
以下是可用的轉換器(假設輸入為 go-sdk
):
轉換器 | 效果 |
---|---|
SNAKE | go_sdk |
KEBAB | go-sdk |
CAMEL | goSdk |
PASCAL | GoSdk |
LOWER | go-sdk |
UPPER | GO-SDK |
TITLE | Go-Sdk |