跳至主要内容
版本:1.23.6

模板倉庫

自 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):

轉換器效果
SNAKEgo_sdk
KEBABgo-sdk
CAMELgoSdk
PASCALGoSdk
LOWERgo-sdk
UPPERGO-SDK
TITLEGo-Sdk