diff --git a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/authentication.md b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/authentication.md index b82066d3..d27f38ae 100644 --- a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/authentication.md +++ b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/authentication.md @@ -6,208 +6,208 @@ aliases: - /zh-tw/authentication --- -# 认证 +# 認證 -## 轻量级目录访问协议(Lightweight Directory Access Protocol,LDAP) +## 轻量级目錄访问协议(Lightweight Directory Access Protocol,LDAP) -通过 BindDN 的 LDAP 和简单认证方式 LDAP 共享以下字段: +通過 BindDN 的 LDAP 和简單認證方式 LDAP 共享以下字段: -- 认证名称 **(必选)** +- 認證名稱 **(必選)** - - 分配给新授权方法的名称。 + - 分配给新授权方法的名稱。 -- 主机名 **(必选)** +- 主机名 **(必選)** - LDAP 服务的主机地址. - 例如:`mydomain.com` -- 端口号 **(必选)** +- 端口号 **(必選)** - LDAP 服务的端口号. - 例如: LDAP `389`/ LDAPs `636` -- 安全协议 (可选) +- 安全协议 (可選) - 连接 LDAP 服务器时是否使用 TLS 协议。 -- 管理员过滤规则 (可选) +- 管理员過滤規則 (可選) - - 一个 LDAP 过滤器,用于指定哪些用户应该被赋予管理员特权。如果用户帐户符合过滤器条件,则该用户将被授予管理员权限。 + - 一个 LDAP 過滤器,用于指定哪些使用者應該被赋予管理员特权。如果使用者帳戶符合過滤器条件,则該使用者将被授予管理员权限。 - 示例:`(objectClass=adminAccount)` - 适用于 Microsoft Active Directory(AD)的示例:`memberOf=CN=admin-group,OU=example,DC=example,DC=org` -- 用户名属性(可选) +- 使用者名属性(可選) - - 用户 LDAP 记录中包含用户名称的属性。在第一次成功登录后,将使用指定的属性值作为新的 Gitea 账户用户名。若留空,则使用登录表单上提供的用户名。 - - 当提供的登录名与多个属性匹配时,这一选项非常有用,但是只有一个特定属性应该用于 Gitea 账户名称,请参阅"用户过滤器"。 + - 使用者 LDAP 记录中包含使用者名稱的属性。在第一次成功登入后,将使用指定的属性值作為新的 Gitea 账户使用者名。若留空,则使用登入表單上提供的使用者名。 + - 当提供的登入名与多个属性匹配时,这一選项非常有用,但是只有一个特定属性應該用于 Gitea 账户名稱,請参阅"使用者過滤器"。 - 示例:uid - 适用于 Microsoft Active Directory(AD)的示例:`sAMAccountName` -- 名字属性(可选) +- 名字属性(可選) - - 用户 LDAP 记录中包含用户名字的属性。将用于填充他们的账户信息。 + - 使用者 LDAP 记录中包含使用者名字的属性。将用于填充他们的账户信息。 - 示例:givenName -- 姓氏属性(可选) +- 姓氏属性(可選) - - 用户 LDAP 记录中包含用户姓氏的属性。将用于填充他们的账户信息。 + - 使用者 LDAP 记录中包含使用者姓氏的属性。将用于填充他们的账户信息。 - 示例:`sn` -- 电子邮件属性 **(必选)** - - 用户 LDAP 记录中包含用户电子邮件地址的属性。将用于填充他们的账户信息。 +- 电子邮件属性 **(必選)** + - 使用者 LDAP 记录中包含使用者电子邮件地址的属性。将用于填充他们的账户信息。 - 示例:`mail` ### LDAP(via BindDN) 需要额外设置以下字段: -- 绑定 DN (可选) +- 绑定 DN (可選) - - 搜索用户时绑定到 LDAP 服务器的 DN。这可以留空以执行匿名搜索。 + - 搜索使用者时绑定到 LDAP 服务器的 DN。这可以留空以執行匿名搜索。 - 示例: `cn=Search,dc=mydomain,dc=com` -- 绑定密码 (可选) +- 绑定密碼 (可選) - - 上述指定的 Bind DN(绑定区别名)的密码,如果有的话。注意:该密码在服务器上使用 SECRET_KEY 进行加密存储。仍然建议确保 Bind DN 具有尽可能少的权限。 + - 上述指定的 Bind DN(绑定区别名)的密碼,如果有的话。注意:該密碼在服务器上使用 SECRET_KEY 進行加密存儲。仍然建议确保 Bind DN 具有尽可能少的权限。 -- 用户搜索基准 **(必选)** +- 使用者搜索基准 **(必選)** - - 这是用于搜索用户帐户的 LDAP 基础路径. + - 这是用于搜索使用者帳戶的 LDAP 基础路径. - 示例: `ou=Users,dc=mydomain,dc=com` -- 用户过滤规则 **(必选)** - - LDAP 过滤器声明如何查找试图进行身份验证的用户记录 - `%[1]s`匹配参数将替换为登录表单中给出的登录名 +- 使用者過滤規則 **(必選)** + - LDAP 過滤器声明如何查找试图進行身份驗證的使用者记录 + `%[1]s`匹配參數将替换為登入表單中给出的登入名 - 示例: `(&(objectClass=posixAccount)(|(uid=%[1]s)(mail=%[1]s)))` - 示例 for Microsoft Active Directory (AD): `(&(objectCategory=Person)(memberOf=CN=user-group,OU=example,DC=example,DC=org)(sAMAccountName=%s)(!(UserAccountControl:1.2.840.113556.1.4.803:=2)))` - - 如需多次替换,应使用 `%[1]s`,例如在将提供的登录名与多个属性(如用户标识符、电子邮件甚至电话号码)进行匹配时。 + - 如需多次替换,應使用 `%[1]s`,例如在将提供的登入名与多个属性(如使用者标识符、电子邮件甚至电话号码)進行匹配时。 - 示例: `(&(objectClass=Person)(|(uid=%[1]s)(mail=%[1]s)(mobile=%[1]s)))` -- 启用用户同步 - - 这个选项启用了一个周期性任务,用于将 Gitea 用户与 LDAP 服务器进行同步。默认的同步周期是每 24 小时, - 但您可以在 app.ini 文件中进行更改。 - 有关此部分的详细说明,请参阅[sample +- 启用使用者同步 + - 这个選项启用了一个周期性任务,用于将 Gitea 使用者与 LDAP 服务器進行同步。默认的同步周期是每 24 小时, + 但您可以在 app.ini 文件中進行更改。 + 有关此部分的详细说明,請参阅[sample app.ini](https://github.com/go-gitea/gitea/blob/main/custom/conf/app.example.ini) 的*cron.sync_external_users* 部分的注释。前面提到的*User Search Base*和*User Filter* - 设置将限制哪些用户可以使用 Gitea 以及哪些用户将被同步。 - 在初始运行任务时,将根据给定的设置创建所有与 LDAP 匹配的用户,因此在使用大型企业 LDAP 目录时需要小心。 + 设置将限制哪些使用者可以使用 Gitea 以及哪些使用者将被同步。 + 在初始运行任务时,将根据给定的设置建立所有与 LDAP 匹配的使用者,因此在使用大型企业 LDAP 目錄时需要小心。 ### LDAP(simple auth) 需要额外设置以下字段: -- 用户 DN **(必选)** +- 使用者 DN **(必選)** - - 用作用户 DN 的模板。匹配参数 `%s` 将替换为登录表单中的登录名。 + - 用作使用者 DN 的模板。匹配參數 `%s` 将替换為登入表單中的登入名。 - 示例: `cn=%s,ou=Users,dc=mydomain,dc=com` - 示例: `uid=%s,ou=Users,dc=mydomain,dc=com` -- 用户搜索基准 (可选) +- 使用者搜索基准 (可選) - - 用户搜索基准声明哪些用户帐户将被搜索. + - 使用者搜索基准声明哪些使用者帳戶将被搜索. - 示例: `ou=Users,dc=mydomain,dc=com` -- 用户过滤规则 **(必选)** - - LDAP 过滤器声明何时允许用户登录 - `%[1]s`匹配参数将替换为登录表单中给出的登录名。 +- 使用者過滤規則 **(必選)** + - LDAP 過滤器声明何时允许使用者登入 + `%[1]s`匹配參數将替换為登入表單中给出的登入名。 - 示例: `(&(objectClass=posixAccount)(|(cn=%[1]s)(mail=%[1]s)))` - 示例: `(&(objectClass=posixAccount)(|(uid=%[1]s)(mail=%[1]s)))` -### 使用 LDAP 验证分组成员 +### 使用 LDAP 驗證分组成员 使用以下字段: -- 群组搜索基础 DN(可选) +- 群组搜索基础 DN(可選) - 组使用的 LDAP DN。 - 示例: `ou=group,dc=mydomain,dc=com` -- 组名过滤器 (可选) +- 组名過滤器 (可選) - - LDAP 过滤器,声明如何在上述 DN 中查找有效组。 + - LDAP 過滤器,声明如何在上述 DN 中查找有效组。 - 示例: `(|(cn=gitea_users)(cn=admins))` -- 组中的用户属性 (可选) +- 组中的使用者属性 (可選) - - 组中列出了哪个用户的 LDAP 属性。 + - 组中列出了哪个使用者的 LDAP 属性。 - 示例: `uid` -- 用户组属性 (可选) - - 哪个组的 LDAP 属性包含一个高于用户属性名称的数组。 +- 使用者组属性 (可選) + - 哪个组的 LDAP 属性包含一个高于使用者属性名稱的数组。 - 示例: `memberUid` -## 可插拔式认证模块(Pluggable Authentication Module,PAM) +## 可插拔式認證模組(Pluggable Authentication Module,PAM) -这个过程启用了 PAM(Pluggable Authentication Modules)认证。用户仍然可以通过用户管理手动添加到系统中。 -PAM 提供了一种机制,通过对用户进行 PAM 认证来自动将其添加到当前数据库中。为了与普通的 Linux 密码一起使用, -运行 Gitea 的用户还必须具有对`/etc/shadow`的读取权限,以便在使用公钥登录时检查账户的有效性。 +这个過程启用了 PAM(Pluggable Authentication Modules)認證。使用者仍然可以通過使用者管理手动添加到系统中。 +PAM 提供了一种機制,通過对使用者進行 PAM 認證来自动将其添加到当前数据库中。為了与普通的 Linux 密碼一起使用, +运行 Gitea 的使用者還必須具有对`/etc/shadow`的读取权限,以便在使用公钥登入时检查账户的有效性。 -**注意**:如果用户已将 SSH 公钥添加到 Gitea 中,使用这些密钥可能会绕过登录检查系统。因此, -如果您希望禁用使用 PAM 进行身份验证的用户,应该在 Gitea 中手动禁用该账户,使用内置的用户管理功能。 +**注意**:如果使用者已将 SSH 公钥添加到 Gitea 中,使用这些密钥可能会绕過登入检查系统。因此, +如果您希望禁用使用 PAM 進行身份驗證的使用者,應該在 Gitea 中手动禁用該账户,使用内置的使用者管理功能。 -1. 配置和安装准备. - - 建议您创建一个管理用户. +1. 配置和安裝准备. + - 建议您建立一个管理使用者. - 建议取消自动注册. -1. 一旦数据库已初始化完成,使用新创建的管理员账户登录. -1. 导航至用户设置(右上角的图标),然后选择 - `Site Administration` -> `Authentication Sources`, 并选择 +1. 一旦数据库已初始化完成,使用新建立的管理员账户登入. +1. 导航至使用者设置(右上角的图标),然后選择 + `Site Administration` -> `Authentication Sources`, 並選择 `Add Authentication Source`. 1. 填写字段如下: - - 认证类型:`PAM`。 - - 名称:任何有效的值都可以,如果您愿意,可以使用"System Authentication"。 - - PAM 服务名称:从/etc/pam.d/目录下选择适用于所需认证的正确文件[^1]。 - - PAM 电子邮件域:用户认证时要附加的电子邮件后缀。例如,如果登录系统期望一个名为 gituse 的用户, - 并且将此字段设置为 mail.com,那么 Gitea 在验证一个 GIT 实例的用户时将期望 user emai 字段为gituser@mail.com[^2]。 + - 認證類型:`PAM`。 + - 名稱:任何有效的值都可以,如果您愿意,可以使用"System Authentication"。 + - PAM 服务名稱:从/etc/pam.d/目錄下選择适用于所需認證的正确文件[^1]。 + - PAM 电子邮件域:使用者認證时要附加的电子邮件后缀。例如,如果登入系统期望一个名為 gituse 的使用者, + 並且将此字段设置為 mail.com,那么 Gitea 在驗證一个 GIT 实例的使用者时将期望 user emai 字段為gituser@mail.com[^2]。 -**Note**: PAM 支持通过[build-time flags](installation/from-source.md#build)添加, -而官方提供的二进制文件通常不会默认启用此功能。PAM 需要确保系统上有必要的 libpam 动态库,并且编译器可以访问必要的 PAM 开发头文件。 +**Note**: PAM 支持通過[build-time flags](installation/from-source.md#build)添加, +而官方提供的二進制文件通常不会默认启用此功能。PAM 需要确保系统上有必要的 libpam 动态库,並且编译器可以访问必要的 PAM 开发头文件。 [^1]: - 例如,在 Debian "Bullseye"上使用标准 Linux 登录,可以使用`common-session-noninteractive`。这个值对于其他版本的 Debian, - 包括 Ubuntu 和 Mint,可能也是有效的,请查阅您所使用发行版的文档以确认。 + 例如,在 Debian "Bullseye"上使用标准 Linux 登入,可以使用`common-session-noninteractive`。这个值對於其他版本的 Debian, + 包括 Ubuntu 和 Mint,可能也是有效的,請查阅您所使用发行版的文檔以确认。 -[^2]: **PAM 的必选项** 请注意:在上面的示例中,用户将作为`gituser`而不是`gituser@mail.com`登录到 Gitea 的 Web 界面。 +[^2]: **PAM 的必選项** 請注意:在上面的示例中,使用者将作為`gituser`而不是`gituser@mail.com`登入到 Gitea 的 Web 界面。 -## 简单邮件传输协议(Simple Mail Transfer Protocol,SMTP) +## 简單邮件传输协议(Simple Mail Transfer Protocol,SMTP) -此选项允许 Gitea 以 Gitea 用户身份登录 SMTP 主机。请设置以下字段: +此選项允许 Gitea 以 Gitea 使用者身份登入 SMTP 主机。請设置以下字段: -- 身份验证名称 **(必选)** +- 身份驗證名稱 **(必選)** - - 分配给新授权方法的名称 + - 分配给新授权方法的名稱 -- SMTP 验证类型 **(必选)** +- SMTP 驗證類型 **(必選)** - - 用于连接 SMTP 主机的验证类型,plain 或 login + - 用于连接 SMTP 主机的驗證類型,plain 或 login -- 主机名 **(必选)** +- 主机名 **(必選)** - SMTP 服务的主机地址 - 例如:`smtp.mydomain.com` -- 端口号 **(必选)** +- 端口号 **(必選)** - SMTP 服务的端口号 - 例如: `587` - 允许的域名 - - 如果使用公共 SMTP 主机或有多个域的 SMTP 主机,限制哪些域可以登录 - 限制哪些域可以登录。 + - 如果使用公共 SMTP 主机或有多个域的 SMTP 主机,限制哪些域可以登入 + 限制哪些域可以登入。 - 示例: `gitea.com,mydomain.com,mydomain2.com` - 强制使用 SMTPS - 默认情况下将使用 SMTPS 连接到端口 465.如果您希望将 smtp 用于其他端口,自行设置 - 否则,如果服务器提供' STARTTLS '扩展名,则将使用此扩展名 -- 跳过 TLS 验证 - - 禁用 TLS 验证身份. -- 该认证源处于激活状态 - - 启用或禁用此身份验证源 +- 跳過 TLS 驗證 + - 禁用 TLS 驗證身份. +- 該認證源处于激活状态 + - 启用或禁用此身份驗證源 ## FreeIPA -- 要使用 FreeIPA 凭据登录 Gitea,需要为 Gitea 创建一个绑定帐户。 - 创建一个绑定帐户: -- 在 FreeIPA 服务器上创建一个 gitea.ldif 文件,并将`dc=example,dc=com`替换为您的`dn`,然后提供一个适当安全的密码。 +- 要使用 FreeIPA 凭据登入 Gitea,需要為 Gitea 建立一个绑定帳戶。 + 建立一个绑定帳戶: +- 在 FreeIPA 服务器上建立一个 gitea.ldif 文件,並将`dc=example,dc=com`替换為您的`dn`,然后提供一个适当安全的密碼。 ```sh dn: uid=gitea,cn=sysaccounts,cn=etc,dc=example,dc=com @@ -220,76 +220,76 @@ PAM 提供了一种机制,通过对用户进行 PAM 认证来自动将其添 nsIdleTimeout: 0 ``` -- 导入 LDIF 文件(如果需要,请将 localhost 更改为 IPA 服务器)。系统会提示您输入 Directory Manager 的密码。: +- 导入 LDIF 文件(如果需要,請将 localhost 更改為 IPA 服务器)。系统会提示您输入 Directory Manager 的密碼。: ```sh ldapmodify -h localhost -p 389 -x -D \ "cn=Directory Manager" -W -f gitea.ldif ``` -- 为`gitea_users`添加 IPA 组: +- 為`gitea_users`添加 IPA 组: ```sh ipa group-add --desc="Gitea Users" gitea_users ``` -- **提示**:对于 IPA 凭证错误,运行' kinit admin '并提供域管理帐户密码. -- 以管理员身份登录 Gitea,点击 Admin Panel 下的`Authentication`。然后单击`Add New Source`并填写详细信息,更改所有适当的地方。 +- **提示**:對於 IPA 凭证错误,运行' kinit admin '並提供域管理帳戶密碼. +- 以管理员身份登入 Gitea,點擊 Admin Panel 下的`Authentication`。然后單擊`Add New Source`並填写详细信息,更改所有适当的地方。 ## SPNEGO with SSPI (Kerberos/NTLM, for Windows only) -Gitea 支持通过 Windows 内置的安全支持提供程序接口(Security Support Provider Interface,SSPI)实现 SPNEGO 单点登录认证(由 RFC4559 定义的方案),用于服务器的 Web 部分。SSPI 仅在 Windows 环境中工作,即当服务器和客户端都在 Windows 操作系统上运行时。 +Gitea 支持通過 Windows 内置的安全支持提供程序接口(Security Support Provider Interface,SSPI)实現 SPNEGO 單点登入認證(由 RFC4559 定义的方案),用于服务器的 Web 部分。SSPI 僅在 Windows 环境中工作,即当服务器和客户端都在 Windows 操作系统上运行时。 -在激活 SSPI 单点登录认证(SSO)之前,您需要准备您的环境: +在激活 SSPI 單点登入認證(SSO)之前,您需要准备您的环境: -- 在 Active Directory 中创建一个单独的用户账户,gitea.exe 进程将在该账户下运行(例如,在 domain.local 域下创建一个名为 user 的账户: -- 为运行 gitea.exe 的主机创建一个服务主体名称(Service Principal Name,SPN),其类别为 HTTP: +- 在 Active Directory 中建立一个單独的使用者账户,gitea.exe 進程将在該账户下运行(例如,在 domain.local 域下建立一个名為 user 的账户: +- 為运行 gitea.exe 的主机建立一个服务主體名稱(Service Principal Name,SPN),其类别為 HTTP: - - 以特权域用户(例如域管理员)的身份启动“命令提示符”或“PowerShell”。 - - 运行下面的命令,将 host.domain.local 替换为 Web 应用程序将运行的服务器的完全限定域名(FQDN),将 domain\user 替换为在前一步中创建的账户名称: + - 以特权域使用者(例如域管理员)的身份启动“命令提示符”或“PowerShell”。 + - 运行下面的命令,将 host.domain.local 替换為 Web 應用程序将运行的服务器的完全限定域名(FQDN),将 domain\user 替换為在前一步中建立的账户名稱: ```sh setspn -A HTTP/host.domain.local domain\user ``` -在遵循上述步骤之前,请确保您按照以下流程进行操作: +在遵循上述步骤之前,請确保您按照以下流程進行操作: -1. 用之前创建的用户登录(如果已经登录,请先注销)。 -2. 确保在`custom/conf/app.ini`文件的`[server]`部分中,`ROOT_URL`设置为 Web 应用程序将运行的服务器的完全限定域名(FQDN),与之前创建服务主体名称时使用的一致(例如,`host.domain.local`)。 +1. 用之前建立的使用者登入(如果已经登入,請先注销)。 +2. 确保在`custom/conf/app.ini`文件的`[server]`部分中,`ROOT_URL`设置為 Web 應用程序将运行的服务器的完全限定域名(FQDN),与之前建立服务主體名稱时使用的一致(例如,`host.domain.local`)。 3. 启动 Web 服务器(运行 `gitea.exe web`)。 -4. 在 `Site Administration -> Authentication Sources` 中添加一个 `SPNEGO with SSPI` 认证源,以启用 SSPI 认证。 -5. 在域中的客户端计算机上,使用任何域用户登录(与运行`gitea.exe`的服务器不同)。 -6. 如果您使用 Chrome 或 Edge 浏览器,请将 Web 应用程序的 URL 添加到“本地站点”(`Internet选项 -> 安全 -> 本地站点 -> 站点`)。 +4. 在 `Site Administration -> Authentication Sources` 中添加一个 `SPNEGO with SSPI` 認證源,以启用 SSPI 認證。 +5. 在域中的客户端计算机上,使用任何域使用者登入(与运行`gitea.exe`的服务器不同)。 +6. 如果您使用 Chrome 或 Edge 浏览器,請将 Web 應用程序的 URL 添加到“本地站点”(`Internet選项 -> 安全 -> 本地站点 -> 站点`)。 7. 启动 Chrome 或 Edge 浏览器,导航到 Gitea 的 FQDN URL(例如,`http://host.domain.local:3000`)。 -8. 在控制面板中点击“Sign In”按钮,然后选择 SSPI,将会自动使用当前登录到计算机的用户进行登录。 -9. 如果无法正常工作,请确保: - - 您不是在运行`gitea.exe`的同一台服务器上运行 Web 浏览器。应该在与服务器不同的域加入计算机(客户端)上运行 Web 浏览器。如果客户端和服务器都在同一台计算机上运行,则 NTLM 将优先于 Kerberos。 +8. 在控制面板中點擊“Sign In”按钮,然后選择 SSPI,将会自动使用当前登入到计算机的使用者進行登入。 +9. 如果無法正常工作,請确保: + - 您不是在运行`gitea.exe`的同一台服务器上运行 Web 浏览器。應該在与服务器不同的域加入计算机(客户端)上运行 Web 浏览器。如果客户端和服务器都在同一台计算机上运行,则 NTLM 将优先于 Kerberos。 - 主机上只有一个`HTTP/...`的 SPN。 - SPN 中只包含主机名,不包含端口号。 - - 将 Web 应用程序的 URL 添加到"本地站点"。 - - 服务器和客户端的时钟差异不超过 5 分钟(取决于组策略)。 - - 在 Internet Explorer 中启用了"集成 Windows 身份验证"(在"高级设置"下)。 + - 将 Web 應用程序的 URL 添加到"本地站点"。 + - 服务器和客户端的时钟差异不超過 5 分钟(取决于组策略)。 + - 在 Internet Explorer 中启用了"集成 Windows 身份驗證"(在"高级设置"下)。 -遵循这些步骤,您应该能够成功启用和使用 SSPI 单点登录认证(SSO)。 +遵循这些步骤,您應該能够成功启用和使用 SSPI 單点登入認證(SSO)。 -## 反向代理认证 +## 反向代理認證 -Gitea 支持通过读取反向代理传递的 HTTP 头中的登录名或者 email 地址来支持反向代理来认证。默认是不启用的,你可以用以下配置启用。 +Gitea 支持通過读取反向代理传递的 HTTP 头中的登入名或者 email 地址来支持反向代理来認證。默认是不启用的,你可以用以下配置启用。 ```ini [service] ENABLE_REVERSE_PROXY_AUTHENTICATION = true ``` -默认的登录用户名的 HTTP 头是 `X-WEBAUTH-USER`,你可以通过修改 `REVERSE_PROXY_AUTHENTICATION_USER` 来变更它。如果用户不存在,可以自动创建用户,当然你需要修改 `ENABLE_REVERSE_PROXY_AUTO_REGISTRATION=true` 来启用它。 +默认的登入使用者名的 HTTP 头是 `X-WEBAUTH-USER`,你可以通過修改 `REVERSE_PROXY_AUTHENTICATION_USER` 来变更它。如果使用者不存在,可以自动建立使用者,当然你需要修改 `ENABLE_REVERSE_PROXY_AUTO_REGISTRATION=true` 来启用它。 -默认的登录用户 Email 的 HTTP 头是 `X-WEBAUTH-EMAIL`,你可以通过修改 `REVERSE_PROXY_AUTHENTICATION_EMAIL` 来变更它。如果用户不存在,可以自动创建用户,当然你需要修改 `ENABLE_REVERSE_PROXY_AUTO_REGISTRATION=true` 来启用它。你也可以通过修改 `ENABLE_REVERSE_PROXY_EMAIL` 来启用或停用这个 HTTP 头。 +默认的登入使用者 Email 的 HTTP 头是 `X-WEBAUTH-EMAIL`,你可以通過修改 `REVERSE_PROXY_AUTHENTICATION_EMAIL` 来变更它。如果使用者不存在,可以自动建立使用者,当然你需要修改 `ENABLE_REVERSE_PROXY_AUTO_REGISTRATION=true` 来启用它。你也可以通過修改 `ENABLE_REVERSE_PROXY_EMAIL` 来启用或停用这个 HTTP 头。 -如果设置了 `ENABLE_REVERSE_PROXY_FULL_NAME=true`,则用户的全名会从 `X-WEBAUTH-FULLNAME` 读取,这样在自动创建用户时将使用这个字段作为用户全名,你也可以通过修改 `REVERSE_PROXY_AUTHENTICATION_FULL_NAME` 来变更 HTTP 头。 +如果设置了 `ENABLE_REVERSE_PROXY_FULL_NAME=true`,则使用者的全名会从 `X-WEBAUTH-FULLNAME` 读取,这样在自动建立使用者时将使用这个字段作為使用者全名,你也可以通過修改 `REVERSE_PROXY_AUTHENTICATION_FULL_NAME` 来变更 HTTP 头。 -你也可以通过修改 `REVERSE_PROXY_TRUSTED_PROXIES` 来设置反向代理的 IP 地址范围,加强安全性,默认值是 `127.0.0.0/8,::1/128`。 通过 `REVERSE_PROXY_LIMIT`, 可以设置最多信任几级反向代理。 +你也可以通過修改 `REVERSE_PROXY_TRUSTED_PROXIES` 来设置反向代理的 IP 地址范围,加强安全性,默认值是 `127.0.0.0/8,::1/128`。 通過 `REVERSE_PROXY_LIMIT`, 可以设置最多信任几级反向代理。 -你可以通过以下配置为 API 启用此认证方法: +你可以通過以下配置為 API 启用此認證方法: ```ini [service] diff --git a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/backup-and-restore.md b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/backup-and-restore.md index 10a6c540..a6a4eaa9 100644 --- a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/backup-and-restore.md +++ b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/backup-and-restore.md @@ -9,17 +9,17 @@ aliases: # 备份与恢复 -Gitea 已经实现了 `dump` 命令可以用来备份所有需要的文件到一个 zip 压缩文件。该压缩文件可以被用来进行数据恢复。 +Gitea 已经实現了 `dump` 命令可以用来备份所有需要的文件到一个 zip 压缩文件。該压缩文件可以被用来進行数据恢复。 ## 备份一致性 -为了确保 Gitea 实例的一致性,在备份期间必须关闭它。 +為了确保 Gitea 实例的一致性,在备份期间必須关闭它。 -Gitea 包括数据库、文件和 Git 仓库,当它被使用时所有这些都会发生变化。例如,当迁移正在进行时,在数据库中创建一个事务,而 Git 仓库正在被复制。如果备份发生在迁移的中间,Git 仓库可能是不完整的,尽管数据库声称它是完整的,因为它是在之后被转储的。避免这种竞争条件的唯一方法是在备份期间停止 Gitea 实例。 +Gitea 包括数据库、文件和 Git 存放庫,当它被使用时所有这些都会发生变化。例如,当迁移正在進行时,在数据库中建立一个事务,而 Git 存放庫正在被复制。如果备份发生在迁移的中间,Git 存放庫可能是不完整的,尽管数据库声稱它是完整的,因為它是在之后被转儲的。避免这种竞争条件的唯一方法是在备份期间停止 Gitea 实例。 ## 备份命令 (`dump`) -先转到 git 用户的权限: `su git`. 再 Gitea 目录运行 `./gitea dump`。一般会显示类似如下的输出: +先转到 git 使用者的权限: `su git`. 再 Gitea 目錄运行 `./gitea dump`。一般会显示类似如下的输出: ``` 2016/12/27 22:32:09 Creating tmp work dir: /tmp/gitea-dump-417443001 @@ -32,18 +32,18 @@ Gitea 包括数据库、文件和 Git 仓库,当它被使用时所有这些都 最后生成的 `gitea-dump-1482906742.zip` 文件将会包含如下内容: -- `app.ini` - 如果原先存储在默认的 custom/ 目录之外,则是配置文件的可选副本 -- `custom/` - 所有保存在 `custom/` 目录下的配置和自定义的文件。 -- `data/` - 数据目录(APP_DATA_PATH),如果使用文件会话,则不包括会话。该目录包括 `attachments`、`avatars`、`lfs`、`indexers`、如果使用 SQLite 则包括 SQLite 文件。 -- `repos/` - 仓库目录的完整副本。 +- `app.ini` - 如果原先存儲在默认的 custom/ 目錄之外,则是配置文件的可選副本 +- `custom/` - 所有保存在 `custom/` 目錄下的配置和自定义的文件。 +- `data/` - 数据目錄(APP_DATA_PATH),如果使用文件会话,则不包括会话。該目錄包括 `attachments`、`avatars`、`lfs`、`indexers`、如果使用 SQLite 则包括 SQLite 文件。 +- `repos/` - 存放庫目錄的完整副本。 - `gitea-db.sql` - 数据库 dump 出来的 SQL。 -- `log/` - Logs 文件,如果用作迁移不是必须的。 +- `log/` - Logs 文件,如果用作迁移不是必須的。 -中间备份文件将会在临时目录进行创建,如果您要重新指定临时目录,可以用 `--tempdir` 参数,或者用 `TMPDIR` 环境变量。 +中间备份文件将会在临时目錄進行建立,如果您要重新指定临时目錄,可以用 `--tempdir` 參數,或者用 `TMPDIR` 环境变量。 ## 备份数据库 -`gitea dump` 创建的 SQL 转储使用 XORM,Gitea 管理员可能更喜欢使用本地的 MySQL 和 PostgreSQL 转储工具。使用 XORM 转储数据库时仍然存在一些问题,可能会导致在尝试恢复时出现问题。 +`gitea dump` 建立的 SQL 转儲使用 XORM,Gitea 管理员可能更喜欢使用本地的 MySQL 和 PostgreSQL 转儲工具。使用 XORM 转儲数据库时仍然存在一些问题,可能会导致在尝试恢复时出現问题。 ```sh # mysql @@ -56,7 +56,7 @@ pg_dump -U $USER $DATABASE > gitea-db.sql 在使用 Docker 时,使用 `dump` 命令有一些注意事项。 -必须以 `gitea/conf/app.ini` 中指定的 `RUN_USER = ` 执行该命令;并且,为了让备份文件夹的压缩过程能够顺利执行,`docker exec` 命令必须在 `--tempdir` 内部执行。 +必須以 `gitea/conf/app.ini` 中指定的 `RUN_USER = ` 執行該命令;並且,為了让备份文件夹的压缩過程能够顺利執行,`docker exec` 命令必須在 `--tempdir` 内部執行。 示例: @@ -64,13 +64,13 @@ pg_dump -U $USER $DATABASE > gitea-db.sql docker exec -u -it -w <--tempdir> $(docker ps -qf 'name=^$') bash -c '/usr/local/bin/gitea dump -c ' ``` -\*注意:`--tempdir` 指的是 Gitea 使用的 Docker 环境的临时目录;如果您没有指定自定义的 `--tempdir`,那么 Gitea 将使用 `/tmp` 或 Docker 容器的 `TMPDIR` 环境变量。对于 `--tempdir`,请相应调整您的 `docker exec` 命令选项。 +\*注意:`--tempdir` 指的是 Gitea 使用的 Docker 环境的临时目錄;如果您没有指定自定义的 `--tempdir`,那么 Gitea 将使用 `/tmp` 或 Docker 容器的 `TMPDIR` 环境变量。對於 `--tempdir`,請相應调整您的 `docker exec` 命令選项。 -结果应该是一个文件,存储在指定的 `--tempdir` 中,类似于:`gitea-dump-1482906742.zip` +结果應該是一个文件,存儲在指定的 `--tempdir` 中,类似于:`gitea-dump-1482906742.zip` ## 恢复命令 (`restore`) -当前还没有恢复命令,恢复需要人工进行。主要是把文件和数据库进行恢复。 +当前還没有恢复命令,恢复需要人工進行。主要是把文件和数据库進行恢复。 例如: @@ -93,15 +93,15 @@ psql -U $USER -d $DATABASE < gitea-db.sql service gitea restart ``` -如果安装方式发生了变化(例如 二进制 -> Docker),或者 Gitea 安装到了与之前安装不同的目录,则需要重新生成仓库 Git 钩子。 +如果安裝方式发生了变化(例如 二進制 -> Docker),或者 Gitea 安裝到了与之前安裝不同的目錄,则需要重新生成存放庫 Git 钩子。 -在 Gitea 运行时,并从 Gitea 二进制文件所在的目录执行:`./gitea admin regenerate hooks` +在 Gitea 运行时,並从 Gitea 二進制文件所在的目錄執行:`./gitea admin regenerate hooks` -这样可以确保仓库 Git 钩子中的应用程序和配置文件路径与当前安装一致。如果这些路径没有更新,仓库的 `push` 操作将失败。 +这样可以确保存放庫 Git 钩子中的應用程序和配置文件路径与当前安裝一致。如果这些路径没有更新,存放庫的 `push` 操作将失败。 ### 使用 Docker (`restore`) -在基于 Docker 的 Gitea 实例中,也没有恢复命令的支持。恢复过程与前面描述的步骤相同,但路径不同。 +在基于 Docker 的 Gitea 实例中,也没有恢复命令的支持。恢复過程与前面描述的步骤相同,但路径不同。 示例: @@ -113,7 +113,7 @@ unzip gitea-dump-1610949662.zip cd gitea-dump-1610949662 # 恢复 Gitea 数据 mv data/* /data/gitea -# 恢复仓库本身 +# 恢复存放庫本身 mv repos/* /data/git/gitea-repositories/ # 调整文件权限 chown -R git:git /data @@ -121,11 +121,11 @@ chown -R git:git /data /usr/local/bin/gitea -c '/data/gitea/conf/app.ini' admin regenerate hooks ``` -Gitea 容器中的默认用户是 `git`(1000:1000)。请用您的 Gitea 容器 ID 或名称替换 `2a83b293548e`。 +Gitea 容器中的默认使用者是 `git`(1000:1000)。請用您的 Gitea 容器 ID 或名稱替换 `2a83b293548e`。 ### 使用 Docker-rootless (`restore`) -在 Docker-rootless 容器中的恢复工作流程只是要使用的目录不同: +在 Docker-rootless 容器中的恢复工作流程只是要使用的目錄不同: ```sh # 在容器中打开 bash 会话 @@ -137,7 +137,7 @@ cd gitea-dump-1610949662 mv data/conf/app.ini /etc/gitea/app.ini # 恢复 Gitea 数据 mv data/* /var/lib/gitea -# 恢复仓库本身 +# 恢复存放庫本身 mv repos/* /var/lib/gitea/git/gitea-repositories # 调整文件权限 chown -R git:git /etc/gitea/app.ini /var/lib/gitea diff --git a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/cmd-embedded.md b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/cmd-embedded.md index ba2adb21..c655f0fd 100644 --- a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/cmd-embedded.md +++ b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/cmd-embedded.md @@ -9,29 +9,29 @@ aliases: # 嵌入资源提取工具 -Gitea 的可执行文件包含了运行所需的所有资源:模板、图片、样式表和翻译文件。你可以通过在 `custom` 目录下的相应路径中放置替换文件来覆盖其中的任何资源(详见 [自定义 Gitea 配置](../administration/customizing-gitea.md))。 +Gitea 的可執行文件包含了运行所需的所有资源:模板、图片、样式表和翻译文件。你可以通過在 `custom` 目錄下的相應路径中放置替换文件来覆盖其中的任何资源(详见 [自定义 Gitea 配置](../administration/customizing-gitea.md))。 -要获取嵌入资源的副本以进行编辑,可以使用 CLI 中的 `embedded` 命令,通过操作系统的 shell 执行。 +要获取嵌入资源的副本以進行编辑,可以使用 CLI 中的 `embedded` 命令,通過操作系统的 shell 執行。 **注意:** 嵌入资源提取工具包含在 Gitea 1.12 及以上版本中。 ## 资源列表 -要列出嵌入在 Gitea 可执行文件中的资源,请使用以下语法: +要列出嵌入在 Gitea 可執行文件中的资源,請使用以下语法: ```sh gitea embedded list [--include-vendored] [patterns...] ``` -`--include-vendored` 标志使命令包括被供应的文件,这些文件通常被排除在外;即来自外部库的文件,这些文件是 Gitea 所需的(例如 [octicons](https://octicons.github.com/) 等)。 +`--include-vendored` 标志使命令包括被供應的文件,这些文件通常被排除在外;即来自外部库的文件,这些文件是 Gitea 所需的(例如 [octicons](https://octicons.github.com/) 等)。 -可以提供一系列文件搜索模式。Gitea 使用 [gobwas/glob](https://github.com/gobwas/glob) 作为其 glob 语法。以下是一些示例: +可以提供一系列文件搜索模式。Gitea 使用 [gobwas/glob](https://github.com/gobwas/glob) 作為其 glob 语法。以下是一些示例: -- 列出所有模板文件,无论在哪个虚拟目录下:`**.tmpl` +- 列出所有模板文件,無论在哪个虚拟目錄下:`**.tmpl` - 列出所有邮件模板文件:`templates/mail/**.tmpl` - 列出 `public/assets/img` 目录下的所有文件:`public/assets/img/**` + 列出 `public/assets/img` 目錄下的所有文件:`public/assets/img/**` -不要忘记为模式使用引号,因为空格、`*` 和其他字符可能对命令行解释器有特殊含义。 +不要忘记為模式使用引号,因為空格、`*` 和其他字符可能对命令行解释器有特殊含义。 如果未提供模式,则列出所有文件。 @@ -53,31 +53,31 @@ templates/user/settings/security_openid.tmpl ## 提取资源 -要提取嵌入在 Gitea 可执行文件中的资源,请使用以下语法: +要提取嵌入在 Gitea 可執行文件中的资源,請使用以下语法: ```sh gitea [--config {file}] embedded extract [--destination {dir}|--custom] [--overwrite|--rename] [--include-vendored] {patterns...} ``` -`--config` 选项用于告知 Gitea `app.ini` 配置文件的位置(如果不在默认位置)。此选项仅在使用 `--custom` 标志时使用。 +`--config` 選项用于告知 Gitea `app.ini` 配置文件的位置(如果不在默认位置)。此選项僅在使用 `--custom` 标志时使用。 -`--destination` 选项用于指定提取文件的目标目录。默认为当前目录。 +`--destination` 選项用于指定提取文件的目标目錄。默认為当前目錄。 -`--custom` 标志告知 Gitea 直接将文件提取到 `custom` 目录中。为使其正常工作,该命令需要知道 `app.ini` 配置文件的位置(通过 `--config` 指定),并且根据配置的不同,需要从 Gitea 通常启动的目录运行。有关详细信息,请参阅 [自定义 Gitea 配置](../administration/customizing-gitea.md)。 +`--custom` 标志告知 Gitea 直接将文件提取到 `custom` 目錄中。為使其正常工作,該命令需要知道 `app.ini` 配置文件的位置(通過 `--config` 指定),並且根据配置的不同,需要从 Gitea 通常启动的目錄运行。有关详细信息,請参阅 [自定义 Gitea 配置](../administration/customizing-gitea.md)。 -`--overwrite` 标志允许覆盖目标目录中的任何现有文件。 +`--overwrite` 标志允许覆盖目标目錄中的任何現有文件。 -`--rename` 标志告知 Gitea 将目标目录中的任何现有文件重命名为 `filename.bak`。之前的 `.bak` 文件将被覆盖。 +`--rename` 标志告知 Gitea 将目标目錄中的任何現有文件重命名為 `filename.bak`。之前的 `.bak` 文件将被覆盖。 -至少需要提供一个文件搜索模式;有关模式的语法和示例,请参阅上述 `list` 子命令。 +至少需要提供一个文件搜索模式;有关模式的语法和示例,請参阅上述 `list` 子命令。 ### 重要提示 -请确保**只提取需要自定义的文件**。位于 `custom` 目录中的文件不会受到 Gitea 的升级过程的影响。当 Gitea 升级到新版本(通过替换可执行文件)时,许多嵌入文件将发生变化。Gitea 将尊重并使用在 `custom` 目录中找到的任何文件,即使这些文件是旧的和不兼容的。 +請确保**只提取需要自定义的文件**。位于 `custom` 目錄中的文件不会受到 Gitea 的升级過程的影響。当 Gitea 升级到新版本(通過替换可執行文件)时,许多嵌入文件将发生变化。Gitea 将尊重並使用在 `custom` 目錄中找到的任何文件,即使这些文件是旧的和不兼容的。 ### 示例:提取邮件模板 -将邮件模板提取到临时目录: +将邮件模板提取到临时目錄: ```sh $ mkdir tempdir diff --git a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/command-line.md b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/command-line.md index e3dbddd4..37c4aed6 100644 --- a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/command-line.md +++ b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/command-line.md @@ -11,17 +11,17 @@ aliases: ## 用法 -`gitea [全局选项] 命令 [命令或全局选项] [参数...]` +`gitea [全局選项] 命令 [命令或全局選项] [參數...]` -## 全局选项 +## 全局選项 -所有全局选项均可被放置在命令级别。 +所有全局選项均可被放置在命令级别。 -- `--help`,`-h`:显示帮助文本并退出。可选。 -- `--version`,`-v`:显示版本信息并退出。可选。 (示例:`Gitea version 1.1.0+218-g7b907ed built with: bindata, sqlite`)。 -- `--custom-path path`,`-C path`:Gitea 自定义文件夹的路径。可选。 (默认值:`AppWorkPath`/custom 或 `$GITEA_CUSTOM`)。 -- `--config path`,`-c path`:Gitea 配置文件的路径。可选。 (默认值:`custom`/conf/app.ini)。 -- `--work-path path`,`-w path`:Gitea 的 `AppWorkPath`。可选。 (默认值:LOCATION_OF_GITEA_BINARY 或 `$GITEA_WORK_DIR`) +- `--help`,`-h`:显示帮助文本並退出。可選。 +- `--version`,`-v`:显示版本信息並退出。可選。 (示例:`Gitea version 1.1.0+218-g7b907ed built with: bindata, sqlite`)。 +- `--custom-path path`,`-C path`:Gitea 自定义文件夹的路径。可選。 (默认值:`AppWorkPath`/custom 或 `$GITEA_CUSTOM`)。 +- `--config path`,`-c path`:Gitea 配置文件的路径。可選。 (默认值:`custom`/conf/app.ini)。 +- `--work-path path`,`-w path`:Gitea 的 `AppWorkPath`。可選。 (默认值:LOCATION_OF_GITEA_BINARY 或 `$GITEA_WORK_DIR`) 注意:默认的 custom-path、config 和 work-path 也可以在构建时更改(如果需要)。 @@ -31,10 +31,10 @@ aliases: 启动服务器: -- 选项: - - `--port number`,`-p number`:端口号。可选。 (默认值:3000)。覆盖配置文件中的设置。 - - `--install-port number`:运行安装页面的端口号。可选。 (默认值:3000)。覆盖配置文件中的设置。 - - `--pid path`,`-P path`:Pid 文件的路径。可选。 +- 選项: + - `--port number`,`-p number`:端口号。可選。 (默认值:3000)。覆盖配置文件中的设置。 + - `--install-port number`:运行安裝页面的端口号。可選。 (默认值:3000)。覆盖配置文件中的设置。 + - `--pid path`,`-P path`:Pid 文件的路径。可選。 - `--quiet`,`-q`:只在控制台上输出 Fatal 日志,用于在设置日志之前发出的日志。 - `--verbose`:在控制台上输出跟踪日志,用于在设置日志之前发出的日志。 - 示例: @@ -42,7 +42,7 @@ aliases: - `gitea web --port 80` - `gitea web --config /etc/gitea.ini --pid /some/custom/gitea.pid` - 注意: - - Gitea 不应以 root 用户身份运行。要绑定到低于 1024 的端口,您可以在 Linux 上使用 setcap 命令:`sudo setcap 'cap_net_bind_service=+ep' /path/to/gitea`。每次更新 Gitea 都需要重新执行此操作。 + - Gitea 不應以 root 使用者身份运行。要绑定到低于 1024 的端口,您可以在 Linux 上使用 setcap 命令:`sudo setcap 'cap_net_bind_service=+ep' /path/to/gitea`。每次更新 Gitea 都需要重新執行此操作。 ### admin @@ -51,278 +51,278 @@ aliases: - 命令: - `user`: - `list`: - - 选项: - - `--admin`:仅列出管理员用户。可选。 - - 描述:列出所有现有用户。 + - 選项: + - `--admin`:僅列出管理员使用者。可選。 + - 描述:列出所有現有使用者。 - 示例: - `gitea admin user list` - `delete`: - - 选项: - - `--email`:要删除的用户的电子邮件。 - - `--username`:要删除的用户的用户名。 - - `--id`:要删除的用户的 ID。 - - 必须提供 `--id`、`--username` 或 `--email` 中的一个。如果提供多个,则所有条件必须匹配。 + - 選项: + - `--email`:要删除的使用者的电子邮件。 + - `--username`:要删除的使用者的使用者名。 + - `--id`:要删除的使用者的 ID。 + - 必須提供 `--id`、`--username` 或 `--email` 中的一个。如果提供多个,则所有条件必須匹配。 - 示例: - `gitea admin user delete --id 1` - `create`: - - 选项: - - `--name value`:用户名。必填。自 Gitea 1.9.0 版本起,请改用 `--username` 标志。 - - `--username value`:用户名。必填。Gitea 1.9.0 新增。 - - `--password value`:密码。必填。 + - 選项: + - `--name value`:使用者名。必填。自 Gitea 1.9.0 版本起,請改用 `--username` 标志。 + - `--username value`:使用者名。必填。Gitea 1.9.0 新增。 + - `--password value`:密碼。必填。 - `--email value`:邮箱。必填。 - - `--admin`:如果提供此选项,将创建一个管理员用户。可选。 - - `--access-token`:如果提供,将为用户创建访问令牌。可选。(默认值:false)。 - - `--must-change-password`:如果提供,创建的用户将在初始登录后需要选择一个新密码。可选。(默认值:true)。 - - `--random-password`:如果提供,将使用随机生成的密码作为创建用户的密码。`--password` 的值将被忽略。可选。 - - `--random-password-length`:如果提供,将用于配置随机生成密码的长度。可选。(默认值:12) + - `--admin`:如果提供此選项,将建立一个管理员使用者。可選。 + - `--access-token`:如果提供,将為使用者建立访问令牌。可選。(默认值:false)。 + - `--must-change-password`:如果提供,建立的使用者将在初始登入后需要選择一个新密碼。可選。(默认值:true)。 + - `--random-password`:如果提供,将使用随机生成的密碼作為建立使用者的密碼。`--password` 的值将被忽略。可選。 + - `--random-password-length`:如果提供,将用于配置随机生成密碼的长度。可選。(默认值:12) - 示例: - `gitea admin user create --username myname --password asecurepassword --email me@example.com` - `change-password`: - - 选项: - - `--username value`,`-u value`:用户名。必填。 - - `--password value`,`-p value`:新密码。必填。 + - 選项: + - `--username value`,`-u value`:使用者名。必填。 + - `--password value`,`-p value`:新密碼。必填。 - 示例: - `gitea admin user change-password --username myname --password asecurepassword` - `must-change-password`: - - 参数: - - `[username...]`:需要更改密码的用户 - - 选项: - - `--all`,`-A`:强制所有用户更改密码 - - `--exclude username`,`-e username`:排除给定的用户。可以多次设置。 - - `--unset`:撤销对给定用户的强制密码更改 + - 參數: + - `[username...]`:需要更改密碼的使用者 + - 選项: + - `--all`,`-A`:强制所有使用者更改密碼 + - `--exclude username`,`-e username`:排除给定的使用者。可以多次设置。 + - `--unset`:撤销对给定使用者的强制密碼更改 - `regenerate`: - - 选项: - - `hooks`:重新生成所有仓库的 Git Hooks。 + - 選项: + - `hooks`:重新生成所有存放庫的 Git Hooks。 - `keys`:重新生成 authorized_keys 文件。 - 示例: - `gitea admin regenerate hooks` - `gitea admin regenerate keys` - `auth`: - `list`: - - 描述:列出所有存在的外部认证源。 + - 描述:列出所有存在的外部認證源。 - 示例: - `gitea admin auth list` - `delete`: - - 选项: + - 選项: - `--id`:要删除的源的 ID。必填。 - 示例: - `gitea admin auth delete --id 1` - `add-oauth`: - - 选项: - - `--name`:应用程序名称。 + - 選项: + - `--name`:應用程序名稱。 - `--provider`:OAuth2 提供者。 - `--key`:客户端 ID(Key)。 - `--secret`:客户端密钥。 - - `--auto-discover-url`:OpenID Connect 自动发现 URL(仅在使用 OpenID Connect 作为提供程序时需要)。 + - `--auto-discover-url`:OpenID Connect 自动发現 URL(僅在使用 OpenID Connect 作為提供程序时需要)。 - `--use-custom-urls`:在 GitLab/GitHub OAuth 端点上使用自定义 URL。 - `--custom-tenant-id`:在 OAuth 端点上使用自定义租户 ID。 - - `--custom-auth-url`:使用自定义授权 URL(GitLab/GitHub 的选项)。 - - `--custom-token-url`:使用自定义令牌 URL(GitLab/GitHub 的选项)。 - - `--custom-profile-url`:使用自定义配置文件 URL(GitLab/GitHub 的选项)。 - - `--custom-email-url`:使用自定义电子邮件 URL(GitHub 的选项)。 - - `--icon-url`:OAuth2 登录源的自定义图标 URL。 - - `--skip-local-2fa`:允许源覆盖本地 2FA。(可选) - - `--scopes`:请求此 OAuth2 源的附加范围。(可选) - - `--required-claim-name`:必须设置的声明名称,以允许用户使用此源登录。(可选) - - `--required-claim-value`:必须设置的声明值,以允许用户使用此源登录。(可选) - - `--group-claim-name`:提供此源的组名的声明名称。(可选) - - `--admin-group`:管理员用户的组声明值。(可选) - - `--restricted-group`:受限用户的组声明值。(可选) - - `--group-team-map`:组与组织团队之间的 JSON 映射。(可选) - - `--group-team-map-removal`:根据组自动激活团队成员资格的删除。(可选) + - `--custom-auth-url`:使用自定义授权 URL(GitLab/GitHub 的選项)。 + - `--custom-token-url`:使用自定义令牌 URL(GitLab/GitHub 的選项)。 + - `--custom-profile-url`:使用自定义配置文件 URL(GitLab/GitHub 的選项)。 + - `--custom-email-url`:使用自定义电子邮件 URL(GitHub 的選项)。 + - `--icon-url`:OAuth2 登入源的自定义图标 URL。 + - `--skip-local-2fa`:允许源覆盖本地 2FA。(可選) + - `--scopes`:請求此 OAuth2 源的附加范围。(可選) + - `--required-claim-name`:必須设置的声明名稱,以允许使用者使用此源登入。(可選) + - `--required-claim-value`:必須设置的声明值,以允许使用者使用此源登入。(可選) + - `--group-claim-name`:提供此源的组名的声明名稱。(可選) + - `--admin-group`:管理员使用者的组声明值。(可選) + - `--restricted-group`:受限使用者的组声明值。(可選) + - `--group-team-map`:组与組織团队之间的 JSON 映射。(可選) + - `--group-team-map-removal`:根据组自动激活团队成员资格的删除。(可選) - 示例: - `gitea admin auth add-oauth --name external-github --provider github --key OBTAIN_FROM_SOURCE --secret OBTAIN_FROM_SOURCE` - `update-oauth`: - - 选项: + - 選项: - `--id`:要更新的源的 ID。必填。 - - `--name`:应用程序名称。 + - `--name`:應用程序名稱。 - `--provider`:OAuth2 提供者。 - `--key`:客户端 ID(Key)。 - `--secret`:客户端密钥。 - - `--auto-discover-url`:OpenID Connect 自动发现 URL(仅在使用 OpenID Connect 作为提供程序时需要)。 + - `--auto-discover-url`:OpenID Connect 自动发現 URL(僅在使用 OpenID Connect 作為提供程序时需要)。 - `--use-custom-urls`:在 GitLab/GitHub OAuth 端点上使用自定义 URL。 - `--custom-tenant-id`:在 OAuth 端点上使用自定义租户 ID。 - - `--custom-auth-url`:使用自定义授权 URL(GitLab/GitHub 的选项)。 - - `--custom-token-url`:使用自定义令牌 URL(GitLab/GitHub 的选项)。 - - `--custom-profile-url`:使用自定义配置文件 URL(GitLab/GitHub 的选项)。 - - `--custom-email-url`:使用自定义电子邮件 URL(GitHub 的选项)。 - - `--icon-url`:OAuth2 登录源的自定义图标 URL。 - - `--skip-local-2fa`:允许源覆盖本地 2FA。(可选) - - `--scopes`:请求此 OAuth2 源的附加范围。 - - `--required-claim-name`:必须设置的声明名称,以允许用户使用此源登录。(可选) - - `--required-claim-value`:必须设置的声明值,以允许用户使用此源登录。(可选) - - `--group-claim-name`:提供此源的组名的声明名称。(可选) - - `--admin-group`:管理员用户的组声明值。(可选) - - `--restricted-group`:受限用户的组声明值。(可选) + - `--custom-auth-url`:使用自定义授权 URL(GitLab/GitHub 的選项)。 + - `--custom-token-url`:使用自定义令牌 URL(GitLab/GitHub 的選项)。 + - `--custom-profile-url`:使用自定义配置文件 URL(GitLab/GitHub 的選项)。 + - `--custom-email-url`:使用自定义电子邮件 URL(GitHub 的選项)。 + - `--icon-url`:OAuth2 登入源的自定义图标 URL。 + - `--skip-local-2fa`:允许源覆盖本地 2FA。(可選) + - `--scopes`:請求此 OAuth2 源的附加范围。 + - `--required-claim-name`:必須设置的声明名稱,以允许使用者使用此源登入。(可選) + - `--required-claim-value`:必須设置的声明值,以允许使用者使用此源登入。(可選) + - `--group-claim-name`:提供此源的组名的声明名稱。(可選) + - `--admin-group`:管理员使用者的组声明值。(可選) + - `--restricted-group`:受限使用者的组声明值。(可選) - 示例: - `gitea admin auth update-oauth --id 1 --name external-github-updated` - `add-smtp`: - - 选项: - - `--name`:应用程序名称。必填。 - - `--auth-type`:SMTP 认证类型(PLAIN/LOGIN/CRAM-MD5)。默认为 PLAIN。 + - 選项: + - `--name`:應用程序名稱。必填。 + - `--auth-type`:SMTP 認證類型(PLAIN/LOGIN/CRAM-MD5)。默认為 PLAIN。 - `--host`:SMTP 主机。必填。 - `--port`:SMTP 端口。必填。 - - `--force-smtps`:SMTPS 始终在端口 465 上使用。设置此选项以强制在其他端口上使用 SMTPS。 - - `--skip-verify`:跳过 TLS 验证。 + - `--force-smtps`:SMTPS 始终在端口 465 上使用。设置此選项以强制在其他端口上使用 SMTPS。 + - `--skip-verify`:跳過 TLS 驗證。 - `--helo-hostname`:发送 HELO 时使用的主机名。留空以发送当前主机名。 - `--disable-helo`:禁用 SMTP helo。 - `--allowed-domains`:留空以允许所有域。使用逗号(',')分隔多个域。 - - `--skip-local-2fa`:跳过 2FA 登录。 - - `--active`:启用此认证源。 + - `--skip-local-2fa`:跳過 2FA 登入。 + - `--active`:启用此認證源。 备注: - `--force-smtps`、`--skip-verify`、`--disable-helo`、`--skip-local-2fs` 和 `--active` 选项可以采用以下形式使用: - - `--option`、`--option=true` 以启用选项 - - `--option=false` 以禁用选项 - 如果未指定这些选项,则在 `update-smtp` 中不会更改值,或者在 `add-smtp` 中将使用默认的 `false` 值。 + `--force-smtps`、`--skip-verify`、`--disable-helo`、`--skip-local-2fs` 和 `--active` 選项可以采用以下形式使用: + - `--option`、`--option=true` 以启用選项 + - `--option=false` 以禁用選项 + 如果未指定这些選项,则在 `update-smtp` 中不会更改值,或者在 `add-smtp` 中将使用默认的 `false` 值。 - 示例: - `gitea admin auth add-smtp --name ldap --host smtp.mydomain.org --port 587 --skip-verify --active` - `update-smtp`: - - 选项: + - 選项: - `--id`:要更新的源的 ID。必填。 - - 其他选项与 `add-smtp` 共享 + - 其他選项与 `add-smtp` 共享 - 示例: - `gitea admin auth update-smtp --id 1 --host smtp.mydomain.org --port 587 --skip-verify=false` - `gitea admin auth update-smtp --id 1 --active=false` - - `add-ldap`:添加新的 LDAP(通过 Bind DN)认证源 - - 选项: - - `--name value`:认证名称。必填。 - - `--not-active`:停用认证源。 - - `--security-protocol value`:安全协议名称。必填。 - - `--skip-tls-verify`:禁用 TLS 验证。 + - `add-ldap`:添加新的 LDAP(通過 Bind DN)認證源 + - 選项: + - `--name value`:認證名稱。必填。 + - `--not-active`:停用認證源。 + - `--security-protocol value`:安全协议名稱。必填。 + - `--skip-tls-verify`:禁用 TLS 驗證。 - `--host value`:LDAP 服务器的地址。必填。 - `--port value`:连接到 LDAP 服务器时使用的端口。必填。 - - `--user-search-base value`:用户帐户将在其中搜索的 LDAP 基础路径。必填。 - - `--user-filter value`:声明如何查找试图进行身份验证的用户记录的 LDAP 过滤器。必填。 - - `--admin-filter value`:指定是否应授予用户管理员特权的 LDAP 过滤器。 - - `--restricted-filter value`:指定是否应将用户设置为受限状态的 LDAP 过滤器。 - - `--username-attribute value`:用户 LDAP 记录中包含用户名的属性。 - - `--firstname-attribute value`:用户 LDAP 记录中包含用户名字的属性。 - - `--surname-attribute value`:用户 LDAP 记录中包含用户姓氏的属性。 - - `--email-attribute value`:用户 LDAP 记录中包含用户电子邮件地址的属性。必填。 - - `--public-ssh-key-attribute value`:用户 LDAP 记录中包含用户公共 SSH 密钥的属性。 - - `--avatar-attribute value`:用户 LDAP 记录中包含用户头像的属性。 - - `--bind-dn value`:在搜索用户时绑定到 LDAP 服务器的 DN。 - - `--bind-password value`:绑定 DN 的密码(如果有)。 + - `--user-search-base value`:使用者帳戶将在其中搜索的 LDAP 基础路径。必填。 + - `--user-filter value`:声明如何查找试图進行身份驗證的使用者记录的 LDAP 過滤器。必填。 + - `--admin-filter value`:指定是否應授予使用者管理员特权的 LDAP 過滤器。 + - `--restricted-filter value`:指定是否應将使用者设置為受限状态的 LDAP 過滤器。 + - `--username-attribute value`:使用者 LDAP 记录中包含使用者名的属性。 + - `--firstname-attribute value`:使用者 LDAP 记录中包含使用者名字的属性。 + - `--surname-attribute value`:使用者 LDAP 记录中包含使用者姓氏的属性。 + - `--email-attribute value`:使用者 LDAP 记录中包含使用者电子邮件地址的属性。必填。 + - `--public-ssh-key-attribute value`:使用者 LDAP 记录中包含使用者公共 SSH 密钥的属性。 + - `--avatar-attribute value`:使用者 LDAP 记录中包含使用者头像的属性。 + - `--bind-dn value`:在搜索使用者时绑定到 LDAP 服务器的 DN。 + - `--bind-password value`:绑定 DN 的密碼(如果有)。 - `--attributes-in-bind`:在绑定 DN 上下文中获取属性。 - - `--synchronize-users`:启用用户同步。 + - `--synchronize-users`:启用使用者同步。 - `--page-size value`:搜索页面大小。 - 示例: - `gitea admin auth add-ldap --name ldap --security-protocol unencrypted --host mydomain.org --port 389 --user-search-base "ou=Users,dc=mydomain,dc=org" --user-filter "(&(objectClass=posixAccount)(|(uid=%[1]s)(mail=%[1]s)))" --email-attribute mail` - - `update-ldap`:更新现有的 LDAP(通过 Bind DN)认证源 - - 选项: - - `--id value`:认证源的 ID。必填。 - - `--name value`:认证名称。 - - `--not-active`:停用认证源。 - - `--security-protocol value`:安全协议名称。 - - `--skip-tls-verify`:禁用 TLS 验证。 + - `update-ldap`:更新現有的 LDAP(通過 Bind DN)認證源 + - 選项: + - `--id value`:認證源的 ID。必填。 + - `--name value`:認證名稱。 + - `--not-active`:停用認證源。 + - `--security-protocol value`:安全协议名稱。 + - `--skip-tls-verify`:禁用 TLS 驗證。 - `--host value`:LDAP 服务器的地址。 - `--port value`:连接到 LDAP 服务器时使用的端口。 - - `--user-search-base value`:用户帐户将在其中搜索的 LDAP 基础路径。 - - `--user-filter value`:声明如何查找试图进行身份验证的用户记录的 LDAP 过滤器。 - - `--admin-filter value`:指定是否应授予用户管理员特权的 LDAP 过滤器。 - - `--restricted-filter value`:指定是否应将用户设置为受限状态的 LDAP 过滤器。 - - `--username-attribute value`:用户 LDAP 记录中包含用户名的属性。 - - `--firstname-attribute value`:用户 LDAP 记录中包含用户名字的属性。 - - `--surname-attribute value`:用户 LDAP 记录中包含用户姓氏的属性。 - - `--email-attribute value`:用户 LDAP 记录中包含用户电子邮件地址的属性。 - - `--public-ssh-key-attribute value`:用户 LDAP 记录中包含用户公共 SSH 密钥的属性。 - - `--avatar-attribute value`:用户 LDAP 记录中包含用户头像的属性。 - - `--bind-dn value`:在搜索用户时绑定到 LDAP 服务器的 DN。 - - `--bind-password value`:绑定 DN 的密码(如果有)。 + - `--user-search-base value`:使用者帳戶将在其中搜索的 LDAP 基础路径。 + - `--user-filter value`:声明如何查找试图進行身份驗證的使用者记录的 LDAP 過滤器。 + - `--admin-filter value`:指定是否應授予使用者管理员特权的 LDAP 過滤器。 + - `--restricted-filter value`:指定是否應将使用者设置為受限状态的 LDAP 過滤器。 + - `--username-attribute value`:使用者 LDAP 记录中包含使用者名的属性。 + - `--firstname-attribute value`:使用者 LDAP 记录中包含使用者名字的属性。 + - `--surname-attribute value`:使用者 LDAP 记录中包含使用者姓氏的属性。 + - `--email-attribute value`:使用者 LDAP 记录中包含使用者电子邮件地址的属性。 + - `--public-ssh-key-attribute value`:使用者 LDAP 记录中包含使用者公共 SSH 密钥的属性。 + - `--avatar-attribute value`:使用者 LDAP 记录中包含使用者头像的属性。 + - `--bind-dn value`:在搜索使用者时绑定到 LDAP 服务器的 DN。 + - `--bind-password value`:绑定 DN 的密碼(如果有)。 - `--attributes-in-bind`:在绑定 DN 上下文中获取属性。 - - `--synchronize-users`:启用用户同步。 + - `--synchronize-users`:启用使用者同步。 - `--page-size value`:搜索页面大小。 - 示例: - `gitea admin auth update-ldap --id 1 --name "my ldap auth source"` - `gitea admin auth update-ldap --id 1 --username-attribute uid --firstname-attribute givenName --surname-attribute sn` - - `add-ldap-simple`:添加新的 LDAP(简单身份验证)认证源 - - 选项: - - `--name value`:认证名称。必填。 - - `--not-active`:停用认证源。 - - `--security-protocol value`:安全协议名称。必填。 - - `--skip-tls-verify`:禁用 TLS 验证。 + - `add-ldap-simple`:添加新的 LDAP(简單身份驗證)認證源 + - 選项: + - `--name value`:認證名稱。必填。 + - `--not-active`:停用認證源。 + - `--security-protocol value`:安全协议名稱。必填。 + - `--skip-tls-verify`:禁用 TLS 驗證。 - `--host value`:LDAP 服务器的地址。必填。 - `--port value`:连接到 LDAP 服务器时使用的端口。必填。 - - `--user-search-base value`:用户帐户将在其中搜索的 LDAP 基础路径。 - - `--user-filter value`:声明如何查找试图进行身份验证的用户记录的 LDAP 过滤器。必填。 - - `--admin-filter value`:指定是否应授予用户管理员特权的 LDAP 过滤器。 - - `--restricted-filter value`:指定是否应将用户设置为受限状态的 LDAP 过滤器。 - - `--username-attribute value`:用户 LDAP 记录中包含用户名的属性。 - - `--firstname-attribute value`:用户 LDAP 记录中包含用户名字的属性。 - - `--surname-attribute value`:用户 LDAP 记录中包含用户姓氏的属性。 - - `--email-attribute value`:用户 LDAP 记录中包含用户电子邮件地址的属性。必填。 - - `--public-ssh-key-attribute value`:用户 LDAP 记录中包含用户公共 SSH 密钥的属性。 - - `--avatar-attribute value`:用户 LDAP 记录中包含用户头像的属性。 - - `--user-dn value`:用户的 DN。必填。 + - `--user-search-base value`:使用者帳戶将在其中搜索的 LDAP 基础路径。 + - `--user-filter value`:声明如何查找试图進行身份驗證的使用者记录的 LDAP 過滤器。必填。 + - `--admin-filter value`:指定是否應授予使用者管理员特权的 LDAP 過滤器。 + - `--restricted-filter value`:指定是否應将使用者设置為受限状态的 LDAP 過滤器。 + - `--username-attribute value`:使用者 LDAP 记录中包含使用者名的属性。 + - `--firstname-attribute value`:使用者 LDAP 记录中包含使用者名字的属性。 + - `--surname-attribute value`:使用者 LDAP 记录中包含使用者姓氏的属性。 + - `--email-attribute value`:使用者 LDAP 记录中包含使用者电子邮件地址的属性。必填。 + - `--public-ssh-key-attribute value`:使用者 LDAP 记录中包含使用者公共 SSH 密钥的属性。 + - `--avatar-attribute value`:使用者 LDAP 记录中包含使用者头像的属性。 + - `--user-dn value`:使用者的 DN。必填。 - 示例: - `gitea admin auth add-ldap-simple --name ldap --security-protocol unencrypted --host mydomain.org --port 389 --user-dn "cn=%s,ou=Users,dc=mydomain,dc=org" --user-filter "(&(objectClass=posixAccount)(cn=%s))" --email-attribute mail` - - `update-ldap-simple`:更新现有的 LDAP(简单身份验证)认证源 - - 选项: - - `--id value`:认证源的 ID。必填。 - - `--name value`:认证名称。 - - `--not-active`:停用认证源。 - - `--security-protocol value`:安全协议名称。 - - `--skip-tls-verify`:禁用 TLS 验证。 + - `update-ldap-simple`:更新現有的 LDAP(简單身份驗證)認證源 + - 選项: + - `--id value`:認證源的 ID。必填。 + - `--name value`:認證名稱。 + - `--not-active`:停用認證源。 + - `--security-protocol value`:安全协议名稱。 + - `--skip-tls-verify`:禁用 TLS 驗證。 - `--host value`:LDAP 服务器的地址。 - `--port value`:连接到 LDAP 服务器时使用的端口。 - - `--user-search-base value`:用户帐户将在其中搜索的 LDAP 基础路径。 - - `--user-filter value`:声明如何查找试图进行身份验证的用户记录的 LDAP 过滤器。 - - `--admin-filter value`:指定是否应授予用户管理员特权的 LDAP 过滤器。 - - `--restricted-filter value`:指定是否应将用户设置为受限状态的 LDAP 过滤器。 - - `--username-attribute value`:用户 LDAP 记录中包含用户名的属性。 - - `--firstname-attribute value`:用户 LDAP 记录中包含用户名字的属性。 - - `--surname-attribute value`:用户 LDAP 记录中包含用户姓氏的属性。 - - `--email-attribute value`:用户 LDAP 记录中包含用户电子邮件地址的属性。 - - `--public-ssh-key-attribute value`:用户 LDAP 记录中包含用户公共 SSH 密钥的属性。 - - `--avatar-attribute value`:用户 LDAP 记录中包含用户头像的属性。 - - `--user-dn value`:用户的 DN。 + - `--user-search-base value`:使用者帳戶将在其中搜索的 LDAP 基础路径。 + - `--user-filter value`:声明如何查找试图進行身份驗證的使用者记录的 LDAP 過滤器。 + - `--admin-filter value`:指定是否應授予使用者管理员特权的 LDAP 過滤器。 + - `--restricted-filter value`:指定是否應将使用者设置為受限状态的 LDAP 過滤器。 + - `--username-attribute value`:使用者 LDAP 记录中包含使用者名的属性。 + - `--firstname-attribute value`:使用者 LDAP 记录中包含使用者名字的属性。 + - `--surname-attribute value`:使用者 LDAP 记录中包含使用者姓氏的属性。 + - `--email-attribute value`:使用者 LDAP 记录中包含使用者电子邮件地址的属性。 + - `--public-ssh-key-attribute value`:使用者 LDAP 记录中包含使用者公共 SSH 密钥的属性。 + - `--avatar-attribute value`:使用者 LDAP 记录中包含使用者头像的属性。 + - `--user-dn value`:使用者的 DN。 - 示例: - `gitea admin auth update-ldap-simple --id 1 --name "my ldap auth source"` - `gitea admin auth update-ldap-simple --id 1 --username-attribute uid --firstname-attribute givenName --surname-attribute sn` ### cert -生成自签名的 SSL 证书。将输出到当前目录下的`cert.pem`和`key.pem`文件中,并且会覆盖任何现有文件。 +生成自签名的 SSL 证书。将输出到当前目錄下的`cert.pem`和`key.pem`文件中,並且会覆盖任何現有文件。 -- 选项: +- 選项: - `--host value`:逗号分隔的主机名和 IP 地址列表,此证书适用于这些主机。支持使用通配符。必填。 - - `--ecdsa-curve value`:用于生成密钥的 ECDSA 曲线。可选。有效选项为 P224、P256、P384、P521。 - - `--rsa-bits value`:要生成的 RSA 密钥的大小。可选。如果设置了--ecdsa-curve,则忽略此选项。(默认值:3072)。 - - `--start-date value`:证书的创建日期。可选。(格式:`Jan 1 15:04:05 2011`)。 - - `--duration value`:证书有效期。可选。(默认值:8760h0m0s) - - `--ca`:如果提供此选项,则证书将生成自己的证书颁发机构。可选。 + - `--ecdsa-curve value`:用于生成密钥的 ECDSA 曲线。可選。有效選项為 P224、P256、P384、P521。 + - `--rsa-bits value`:要生成的 RSA 密钥的大小。可選。如果设置了--ecdsa-curve,则忽略此選项。(默认值:3072)。 + - `--start-date value`:证书的建立日期。可選。(格式:`Jan 1 15:04:05 2011`)。 + - `--duration value`:证书有效期。可選。(默认值:8760h0m0s) + - `--ca`:如果提供此選项,则证书将生成自己的证书颁发机构。可選。 - 示例: - `gitea cert --host git.example.com,example.com,www.example.com --ca` ### dump -将所有文件和数据库导出到一个 zip 文件中。输出文件将保存在当前目录下,类似于`gitea-dump-1482906742.zip`。 +将所有文件和数据库导出到一个 zip 文件中。输出文件将保存在当前目錄下,类似于`gitea-dump-1482906742.zip`。 -- 选项: - - `--file name`,`-f name`:指定要创建的导出文件的名称。可选。(默认值:gitea-dump-[timestamp].zip)。 - - `--tempdir path`,`-t path`:指定临时目录的路径。可选。(默认值:/tmp)。 - - `--skip-repository`,`-R`:跳过仓库的导出。可选。 - - `--skip-custom-dir`:跳过自定义目录的导出。可选。 - - `--skip-lfs-data`:跳过 LFS 数据的导出。可选。 - - `--skip-attachment-data`:跳过附件数据的导出。可选。 - - `--skip-package-data`:跳过包数据的导出。可选。 - - `--skip-log`:跳过日志数据的导出。可选。 - - `--database`,`-d`:指定数据库的 SQL 语法。可选。 - - `--verbose`,`-V`:如果提供此选项,显示附加详细信息。可选。 - - `--type`:设置导出的格式。可选。(默认值:zip) +- 選项: + - `--file name`,`-f name`:指定要建立的导出文件的名稱。可選。(默认值:gitea-dump-[timestamp].zip)。 + - `--tempdir path`,`-t path`:指定临时目錄的路径。可選。(默认值:/tmp)。 + - `--skip-repository`,`-R`:跳過存放庫的导出。可選。 + - `--skip-custom-dir`:跳過自定义目錄的导出。可選。 + - `--skip-lfs-data`:跳過 LFS 数据的导出。可選。 + - `--skip-attachment-data`:跳過附件数据的导出。可選。 + - `--skip-package-data`:跳過包数据的导出。可選。 + - `--skip-log`:跳過日志数据的导出。可選。 + - `--database`,`-d`:指定数据库的 SQL 语法。可選。 + - `--verbose`,`-V`:如果提供此選项,显示附加详细信息。可選。 + - `--type`:设置导出的格式。可選。(默认值:zip) - 示例: - `gitea dump` - `gitea dump --verbose` ### generate -用于在配置文件中生成随机值和令牌。对于自动部署时生成值非常有用。 +用于在配置文件中生成随机值和令牌。對於自动部署时生成值非常有用。 - 命令: - `secret`: - - 选项: - - `INTERNAL_TOKEN`: 用于内部 API 调用身份验证的令牌。 - - `JWT_SECRET`: 用于 LFS 和 OAUTH2 JWT 身份验证的密钥(LFS_JWT_SECRET 是此选项的别名,用于向后兼容)。 + - 選项: + - `INTERNAL_TOKEN`: 用于内部 API 调用身份驗證的令牌。 + - `JWT_SECRET`: 用于 LFS 和 OAUTH2 JWT 身份驗證的密钥(LFS_JWT_SECRET 是此選项的别名,用于向后兼容)。 - `SECRET_KEY`: 全局密钥。 - 示例: - `gitea generate secret INTERNAL_TOKEN` @@ -331,27 +331,27 @@ aliases: ### keys -提供一个 SSHD AuthorizedKeysCommand。需要在 sshd 配置文件中进行配置: +提供一个 SSHD AuthorizedKeysCommand。需要在 sshd 配置文件中進行配置: ```ini ... -# -e 的值和 AuthorizedKeysCommandUser 应与运行 Gitea 的用户名匹配 +# -e 的值和 AuthorizedKeysCommandUser 應与运行 Gitea 的使用者名匹配 AuthorizedKeysCommandUser git AuthorizedKeysCommand /path/to/gitea keys -e git -u %u -t %t -k %k ``` -该命令将返回适用于提供的密钥的合适 authorized_keys 行。您还应在 `app.ini` 的 `[server]` 部分设置值 `SSH_CREATE_AUTHORIZED_KEYS_FILE=false`。 +該命令将返回适用于提供的密钥的合适 authorized_keys 行。您還應在 `app.ini` 的 `[server]` 部分设置值 `SSH_CREATE_AUTHORIZED_KEYS_FILE=false`。 -注意: opensshd 要求 Gitea 程序由 root 拥有,并且不可由组或其他人写入。程序必须使用绝对路径指定。 -注意: Gitea 必须在运行此命令时处于运行状态才能成功。 +注意: opensshd 要求 Gitea 程序由 root 拥有,並且不可由组或其他人写入。程序必須使用绝对路径指定。 +注意: Gitea 必須在运行此命令时处于运行状态才能成功。 ### migrate -迁移数据库。该命令可用于在首次启动服务器之前运行其他命令。此命令是幂等的。 +迁移数据库。該命令可用于在首次启动服务器之前运行其他命令。此命令是幂等的。 ### doctor check -对 Gitea 实例进行诊断,可以修复一些可修复的问题。 +对 Gitea 实例進行诊断,可以修复一些可修复的问题。 默认只运行部分检查,额外的检查可以参考: - `gitea doctor check --list` - 列出所有可用的检查 @@ -359,8 +359,8 @@ AuthorizedKeysCommand /path/to/gitea keys -e git -u %u -t %t -k %k - `gitea doctor check --default` - 运行默认的检查 - `gitea doctor check --run [check(s),]...` - 运行指定的名字的检查 -有些问题可以通过设置 `--fix` 选项进行自动修复。 -额外的日志可以通过 `--log-file=...` 进行设置。 +有些问题可以通過设置 `--fix` 選项進行自动修复。 +额外的日志可以通過 `--log-file=...` 進行设置。 #### doctor recreate-table @@ -370,19 +370,19 @@ AuthorizedKeysCommand /path/to/gitea keys -e git -u %u -t %t -k %k 2020/08/02 11:32:29 ...rm/session_schema.go:360:Sync() [W] Table user Column keep_activity_private db default is , struct default is 0 ``` -您可以通过以下方式让 Gitea 重新创建这些表,并将旧数据复制到新表中,并适当设置默认值: +您可以通過以下方式让 Gitea 重新建立这些表,並将旧数据复制到新表中,並适当设置默认值: ``` gitea doctor recreate-table user ``` -您可以使用以下方式让 Gitea 重新创建多个表: +您可以使用以下方式让 Gitea 重新建立多个表: ``` gitea doctor recreate-table table1 table2 ... ``` -如果您希望 Gitea 重新创建所有表,请直接调用: +如果您希望 Gitea 重新建立所有表,請直接调用: ``` gitea doctor recreate-table @@ -392,47 +392,47 @@ gitea doctor recreate-table ### doctor convert -将现有的 MySQL 数据库从 utf8 转换为 utf8mb4,或者把 MSSQL 数据库从 varchar 转换为 nvarchar。 +将現有的 MySQL 数据库从 utf8 转换為 utf8mb4,或者把 MSSQL 数据库从 varchar 转换為 nvarchar。 ### manager 管理运行中的服务器操作: - 命令: - - `shutdown`: 优雅地关闭运行中的进程 - - `restart`: 优雅地重新启动运行中的进程(对于 Windows 服务器尚未实现) - - `flush-queues`: 刷新运行中的进程中的队列 - - 选项: - - `--timeout value`: 刷新过程的超时时间(默认值: 1m0s) - - `--non-blocking`: 设置为 true,以在返回之前不等待刷新完成 + - `shutdown`: 优雅地关闭运行中的進程 + - `restart`: 优雅地重新启动运行中的進程(對於 Windows 服务器尚未实現) + - `flush-queues`: 刷新运行中的進程中的队列 + - 選项: + - `--timeout value`: 刷新過程的超时时间(默认值: 1m0s) + - `--non-blocking`: 设置為 true,以在返回之前不等待刷新完成 - `logging`: 调整日志命令 - 命令: - `pause`: 暂停日志记录 - 注意: - - 如果日志级别低于此级别,日志级别将被临时提升为 INFO。 - - Gitea 将在一定程度上缓冲日志,并在超过该点后丢弃日志。 + - 如果日志级别低于此级别,日志级别将被临时提升為 INFO。 + - Gitea 将在一定程度上缓冲日志,並在超過該点后丢弃日志。 - `resume`: 恢复日志记录 - `release-and-reopen`: 使 Gitea 释放和重新打开用于日志记录的文件和连接(相当于向 Gitea 发送 SIGUSR1 信号)。 - `remove name`: 删除指定的日志记录器 - - 选项: - - `--group group`, `-g group`: 从中删除子记录器的组(默认为`default`) + - 選项: + - `--group group`, `-g group`: 从中删除子记录器的组(默认為`default`) - `add`: 添加日志记录器 - 命令: - `console`: 添加控制台日志记录器 - - 选项: - - `--group value`, `-g value`: 要添加日志记录器的组 - 默认为"default" - - `--name value`, `-n value`: 新日志记录器的名称 - 默认为模式 + - 選项: + - `--group value`, `-g value`: 要添加日志记录器的组 - 默认為"default" + - `--name value`, `-n value`: 新日志记录器的名稱 - 默认為模式 - `--level value`, `-l value`: 新日志记录器的日志级别 - `--stacktrace-level value`, `-L value`: 堆栈跟踪日志级别 - `--flags value`, `-F value`: 日志记录器的标志 - `--expression value`, `-e value`: 日志记录器的匹配表达式 - `--prefix value`, `-p value`: 日志记录器的前缀 - `--color`: 在日志中使用颜色 - - `--stderr`: 将控制台日志输出到 stderr - 仅适用于控制台 + - `--stderr`: 将控制台日志输出到 stderr - 僅适用于控制台 - `file`: 添加文件日志记录器 - - 选项: - - `--group value`, `-g value`: 要添加日志记录器的组 - 默认为"default" - - `--name value`, `-n value`: 新日志记录器的名称 - 默认为模式 + - 選项: + - `--group value`, `-g value`: 要添加日志记录器的组 - 默认為"default" + - `--name value`, `-n value`: 新日志记录器的名稱 - 默认為模式 - `--level value`, `-l value`: 新日志记录器的日志级别 - `--stacktrace-level value`, `-L value`: 堆栈跟踪日志级别 - `--flags value`, `-F value`: 日志记录器的标志 @@ -441,79 +441,79 @@ gitea doctor recreate-table - `--color`: 在日志中使用颜色 - `--filename value`, `-f value`: 日志记录器的文件名 - `--rotate`, `-r`: 轮转日志 - - `--max-size value`, `-s value`: 在轮转之前的最大大小(以字节为单位) + - `--max-size value`, `-s value`: 在轮转之前的最大大小(以字节為單位) - `--daily`, `-d`: 每天轮转日志 - `--max-days value`, `-D value`: 保留的每日日志的最大数量 - `--compress`, `-z`: 压缩轮转的日志 - `--compression-level value`, `-Z value`: 使用的压缩级别 - `conn`: 添加网络连接日志记录器 - - 选项: - - `--group value`, `-g value`: 要添加日志记录器的组 - 默认为"default" - - `--name value`, `-n value`: 新日志记录器的名称 - 默认为模式 + - 選项: + - `--group value`, `-g value`: 要添加日志记录器的组 - 默认為"default" + - `--name value`, `-n value`: 新日志记录器的名稱 - 默认為模式 - `--level value`, `-l value`: 新日志记录器的日志级别 - `--stacktrace-level value`, `-L value`: 堆栈跟踪日志级别 - `--flags value`, `-F value`: 日志记录器的标志 - `--expression value`, `-e value`: 日志记录器的匹配表达式 - `--prefix value`, `-p value`: 日志记录器的前缀 - `--color`: 在日志中使用颜色 - - `--reconnect-on-message`, `-R`: 对于每个消息重新连接主机 + - `--reconnect-on-message`, `-R`: 對於每个消息重新连接主机 - `--reconnect`, `-r`: 连接中断时重新连接主机 - - `--protocol value`, `-P value`: 设置要使用的协议:tcp、unix 或 udp(默认为 tcp) - - `--address value`, `-a value`: 要连接到的主机地址和端口(默认为:7020) + - `--protocol value`, `-P value`: 设置要使用的协议:tcp、unix 或 udp(默认為 tcp) + - `--address value`, `-a value`: 要连接到的主机地址和端口(默认為:7020) - `smtp`: 添加 SMTP 日志记录器 - - 选项: - - `--group value`, `-g value`: 要添加日志记录器的组 - 默认为"default" - - `--name value`, `-n value`: 新日志记录器的名称 - 默认为模式 + - 選项: + - `--group value`, `-g value`: 要添加日志记录器的组 - 默认為"default" + - `--name value`, `-n value`: 新日志记录器的名稱 - 默认為模式 - `--level value`, `-l value`: 新日志记录器的日志级别 - `--stacktrace-level value`, `-L value`: 堆栈跟踪日志级别 - `--flags value`, `-F value`: 日志记录器的标志 - `--expression value`, `-e value`: 日志记录器的匹配表达式 - `--prefix value`, `-p value`: 日志记录器的前缀 - `--color`: 在日志中使用颜色 - - `--username value`, `-u value`: 邮件服务器用户名 - - `--password value`, `-P value`: 邮件服务器密码 - - `--host value`, `-H value`: 邮件服务器主机(默认为: 127.0.0.1:25) + - `--username value`, `-u value`: 邮件服务器使用者名 + - `--password value`, `-P value`: 邮件服务器密碼 + - `--host value`, `-H value`: 邮件服务器主机(默认為: 127.0.0.1:25) - `--send-to value`, `-s value`: 要发送到的电子邮件地址 - `--subject value`, `-S value`: 发送电子邮件的主题标题 - - `processes`: 显示 Gitea 进程和 Goroutine 信息 - - 选项: - - `--flat`: 以平面表格形式显示进程,而不是树形结构 - - `--no-system`: 不显示系统进程 - - `--stacktraces`: 显示与进程关联的 Goroutine 的堆栈跟踪 - - `--json`: 输出为 JSON 格式 - - `--cancel PID`: 向具有 PID 的进程发送取消命令(仅适用于非系统进程) + - `processes`: 显示 Gitea 進程和 Goroutine 信息 + - 選项: + - `--flat`: 以平面表格形式显示進程,而不是树形结构 + - `--no-system`: 不显示系统進程 + - `--stacktraces`: 显示与進程关联的 Goroutine 的堆栈跟踪 + - `--json`: 输出為 JSON 格式 + - `--cancel PID`: 向具有 PID 的進程发送取消命令(僅适用于非系统進程) ### dump-repo -`dump-repo` 从 Git/GitHub/Gitea/GitLab 中转储存储库数据: +`dump-repo` 从 Git/GitHub/Gitea/GitLab 中转儲存儲库数据: -- 选项: - - `--git_service service`:Git 服务,可以是 `git`、`github`、`gitea`、`gitlab`。如果 `clone_addr` 可以被识别,则可以忽略此选项。 - - `--repo_dir dir`,`-r dir`:存储数据的存储库目录路径。 +- 選项: + - `--git_service service`:Git 服务,可以是 `git`、`github`、`gitea`、`gitlab`。如果 `clone_addr` 可以被识别,则可以忽略此選项。 + - `--repo_dir dir`,`-r dir`:存儲数据的存儲库目錄路径。 - `--clone_addr addr`:将被克隆的 URL,目前可以是 git/github/gitea/gitlab 的 http/https URL。例如:https://github.com/lunny/tango.git - - `--auth_username lunny`:访问 `clone_addr` 的用户名。 - - `--auth_password `:访问 `clone_addr` 的密码。 + - `--auth_username lunny`:访问 `clone_addr` 的使用者名。 + - `--auth_password `:访问 `clone_addr` 的密碼。 - `--auth_token `:访问 `clone_addr` 的个人令牌。 - - `--owner_name lunny`:如果非空,数据将存储在具有所有者名称的目录中。 - - `--repo_name tango`:如果非空,数据将存储在具有存储库名称的目录中。 - - `--units `:要迁移的项目,一个或多个项目应以逗号分隔。允许的项目有 wiki, issues, labels, releases, release_assets, milestones, pull_requests, comments。如果为空,则表示所有项目。 + - `--owner_name lunny`:如果非空,数据将存儲在具有所有者名稱的目錄中。 + - `--repo_name tango`:如果非空,数据将存儲在具有存儲库名稱的目錄中。 + - `--units `:要迁移的项目,一个或多个项目應以逗号分隔。允许的项目有 wiki, issues, labels, releases, release_assets, milestones, pull_requests, comments。如果為空,则表示所有项目。 ### restore-repo -`restore-repo` 从磁盘目录中还原存储库数据: +`restore-repo` 从硬碟目錄中還原存儲库数据: -- 选项: - - `--repo_dir dir`,`-r dir`:还原数据的存储库目录路径。 - - `--owner_name lunny`:还原目标所有者名称。 - - `--repo_name tango`:还原目标存储库名称。 - - `--units `:要还原的项目,一个或多个项目应以逗号分隔。允许的项目有 wiki, issues, labels, releases, release_assets, milestones, pull_requests, comments。如果为空,则表示所有项目。 +- 選项: + - `--repo_dir dir`,`-r dir`:還原数据的存儲库目錄路径。 + - `--owner_name lunny`:還原目标所有者名稱。 + - `--repo_name tango`:還原目标存儲库名稱。 + - `--units `:要還原的项目,一个或多个项目應以逗号分隔。允许的项目有 wiki, issues, labels, releases, release_assets, milestones, pull_requests, comments。如果為空,则表示所有项目。 ### actions generate-runner-token 生成一个供 Runner 使用的新令牌,用于向服务器注册。 -- 选项: - - `--scope {owner}[/{repo}]`,`-s {owner}[/{repo}]`:限制 Runner 的范围,没有范围表示该 Runner 可用于所有仓库,但你也可以将其限制为特定的仓库或所有者。 +- 選项: + - `--scope {owner}[/{repo}]`,`-s {owner}[/{repo}]`:限制 Runner 的范围,没有范围表示該 Runner 可用于所有存放庫,但你也可以将其限制為特定的存放庫或所有者。 要注册全局 Runner: @@ -521,13 +521,13 @@ gitea doctor recreate-table gitea actions generate-runner-token ``` -要注册特定组织的 Runner,例如 `org`: +要注册特定組織的 Runner,例如 `org`: ``` gitea actions generate-runner-token -s org ``` -要注册特定仓库的 Runner,例如 `username/test-repo`: +要注册特定存放庫的 Runner,例如 `username/test-repo`: ``` gitea actions generate-runner-token -s username/test-repo diff --git a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/config-cheat-sheet.md b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/config-cheat-sheet.md index c7239dc0..2286a938 100644 --- a/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/config-cheat-sheet.md +++ b/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.24/administration/config-cheat-sheet.md @@ -12,19 +12,19 @@ aliases: 这是针对 Gitea 配置文件的说明, 你可以了解 Gitea 的强大配置。 -需要说明的是,你的所有改变请修改 `custom/conf/app.ini` 文件而不是源文件。 -如果是从发行版本完成的安装, -配置文件的路径为`/etc/gitea/conf/app.ini`。 +需要说明的是,你的所有改变請修改 `custom/conf/app.ini` 文件而不是源文件。 +如果是从发行版本完成的安裝, +配置文件的路径為`/etc/gitea/conf/app.ini`。 -所有默认值可以通过 [app.example.ini](https://github.com/go-gitea/gitea/blob/main/custom/conf/app.example.ini) 查看到。 +所有默认值可以通過 [app.example.ini](https://github.com/go-gitea/gitea/blob/main/custom/conf/app.example.ini) 查看到。 标注了 :exclamation: 的配置项表明除非你真的理解这个配置项的意义,否则最好使用默认值。 -包含`#`或者`;`的变量必须使用引号( `` ` `` 或者 `"` )包裹,否则会被解析为注释。 +包含`#`或者`;`的变量必須使用引号( `` ` `` 或者 `"` )包裹,否则会被解析為注释。 -本文档使用以下约定: +本文檔使用以下约定: - `[section].FOO_BAR` 或 `[section]FOO_BAR`: 一个位于 INI 文件 `[section]` 段中的配置项。 -- `FooBar`: 这是一个 Gitea 内部变量,不是一个配置项,仅用于描述相关逻辑。 +- `FooBar`: 这是一个 Gitea 内部变量,不是一个配置项,僅用于描述相关逻辑。 - `$FOO_BAR`: 这是一个环境变量,Gitea 可能会使用它的值,但是它不能直接用于配置文件中。 - `{FOO_BAR}/something` 或 `{FooBar}/something`: 这个值会默认使用配置项 `FOO_BAR` 或者内部变量 `FooBar`。 @@ -33,159 +33,159 @@ aliases: ## 使用环境变量配置 Gitea 我们提供了 [environment-to-ini](https://github.com/go-gitea/gitea/tree/main/contrib/environment-to-ini) 工具 -来帮助通过环境变量生成 Gitea 的 `app.ini` 配置文件。 +来帮助通過环境变量生成 Gitea 的 `app.ini` 配置文件。 ## 默认配置 (非`app.ini`配置文件) 这些值取决于环境,但构成了许多值的基础。当运行 `gitea help`或启动时,它们将 -作为默认配置的一部分进行报告。它们在那里发出的顺序略有不同,但我们将按照设置的顺序在这里列出。 +作為默认配置的一部分進行报告。它们在那里发出的顺序略有不同,但我们将按照设置的顺序在这里列出。 -- _`AppPath`_: Gitea 二进制可执行文件的绝对路径 -- _`AppWorkPath`_: Gitea 可执行文件的工作目录。 该配置可以通过以下几种方式设置,优先级依次递减: +- _`AppPath`_: Gitea 二進制可執行文件的绝对路径 +- _`AppWorkPath`_: Gitea 可執行文件的工作目錄。 該配置可以通過以下几种方式设置,优先级依次递减: - `app.ini`中的`WORK_PATH`配置项 - - 启动 Gitea 时的`--work-path`命令行参数 + - 启动 Gitea 时的`--work-path`命令行參數 - `$GITEA_WORK_DIR`环境变量 - 在编译时设置的内置值(参见从源代码编译) - - 默认为 _`AppPath`_ 的目录 - - 如果上述任何路径为相对路径,将自动解析为相对于 _`AppPath`_ 目录的绝对路径 -- _`CustomPath`_: 这是用于自定义模板和其他选项的基础目录。 - 它是通过使用以下层次结构中的第一个设置的内容来确定的: - - 通过传递给二进制文件的`--custom-path`标志 + - 默认為 _`AppPath`_ 的目錄 + - 如果上述任何路径為相对路径,将自动解析為相對於 _`AppPath`_ 目錄的绝对路径 +- _`CustomPath`_: 这是用于自定义模板和其他選项的基础目錄。 + 它是通過使用以下层次结构中的第一个设置的内容来确定的: + - 通過传递给二進制文件的`--custom-path`标志 - 环境变量 `$GITEA_CUSTOM` - 在构建时设置的内置值(参见从源代码构建) - - 否则,默认为 _`AppWorkPath`_`/custom` - - 如果上述任何路径是相对路径,则会相对于 _`AppWorkPath`_ 目录进行处理, - 使其变为绝对路径。 + - 否则,默认為 _`AppWorkPath`_`/custom` + - 如果上述任何路径是相对路径,则会相對於 _`AppWorkPath`_ 目錄進行处理, + 使其变為绝对路径。 - _`CustomConf`_: 这是指向`app.ini`文件的路径。 - 这是指向`app.ini`文件的路径。 - 在构建时设置的内置值(参见从源代码构建) - - 否则,默认为 _`CustomPath`_`/conf/app.ini` - - 如果上述任何路径是相对路径,则会相对于*`CustomPath`*目录进行处理。 + - 否则,默认為 _`CustomPath`_`/conf/app.ini` + - 如果上述任何路径是相对路径,则会相對於*`CustomPath`*目錄進行处理。 -此外,还有*`StaticRootPath`*,可以在构建时设置为内置值,否则将默认为 _`AppWorkPath`_。 +此外,還有*`StaticRootPath`*,可以在构建时设置為内置值,否则将默认為 _`AppWorkPath`_。 ## Overall (`DEFAULT`) -- `APP_NAME`: **Gitea: Git with a cup of tea** 应用名称,在网页的标题中显示。 -- `RUN_USER`: **_current OS username_/`$USER`/`$USERNAME` e.g. git**: 运行 Gitea 的用户, - 应当是一个专用的系统账户(非用户使用,推荐创建一个专用的`git`用户). 如果在你自己的个人电脑使用改成你自己的用户名。 - 该配置如果设置不正确,Gitea 可能崩溃。 -- `RUN_MODE`: **prod**: 应用的运行模式,对运行性能和问题排除有影响: `dev` 或者 `prod`,默认为 `prod`。 `dev`模式有助于开发和问题排查, 除设置为`dev` 外,均被视为 `prod`. -- `WORK_PATH`: **_the-work-path_**: 工作目录, 前文有提及. +- `APP_NAME`: **Gitea: Git with a cup of tea** 應用名稱,在网页的标题中显示。 +- `RUN_USER`: **_current OS username_/`$USER`/`$USERNAME` e.g. git**: 运行 Gitea 的使用者, + 應当是一个专用的系统账户(非使用者使用,推荐建立一个专用的`git`使用者). 如果在你自己的个人电脑使用改成你自己的使用者名。 + 該配置如果设置不正确,Gitea 可能崩溃。 +- `RUN_MODE`: **prod**: 應用的运行模式,对运行性能和问题排除有影響: `dev` 或者 `prod`,默认為 `prod`。 `dev`模式有助于开发和问题排查, 除设置為`dev` 外,均被视為 `prod`. +- `WORK_PATH`: **_the-work-path_**: 工作目錄, 前文有提及. -## 仓库 (`repository`) +## 存放庫 (`repository`) -- `ROOT`: **`{APP_DATA_PATH}/gitea-repositories`**: 存放 git 工程的根目录,建议填绝对路径。 - 相对路径将被解析为**`{AppWorkPath}/{ROOT}`**. -- `SCRIPT_TYPE`: **bash**: 服务器支持的 Shell 类型,通常是`bash`, +- `ROOT`: **`{APP_DATA_PATH}/gitea-repositories`**: 存放 git 工程的根目錄,建议填绝对路径。 + 相对路径将被解析為**`{AppWorkPath}/{ROOT}`**. +- `SCRIPT_TYPE`: **bash**: 服务器支持的 Shell 類型,通常是`bash`, 但有些服务器也有可能是`sh`。 -- `DETECTED_CHARSETS_ORDER`: **UTF-8, UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE, ISO-8859, windows-1252, ISO-8859, windows-1250, ISO-8859, ISO-8859, ISO-8859, windows-1253, ISO-8859, windows-1255, ISO-8859, windows-1251, windows-1256, KOI8-R, ISO-8859, windows-1254, Shift_JIS, GB18030, EUC-JP, EUC-KR, Big5, ISO-2022, ISO-2022, ISO-2022, IBM424_rtl, IBM424_ltr, IBM420_rtl, IBM420_ltr**: 检测到的字符集的决定性顺序 - 如果检测到的字符集具有相等的置信度,则优先选择列表中较早出现的字符集,而不是较晚出现的字符集。添加“defaults”将会将未命名的字符集放置在该点。 +- `DETECTED_CHARSETS_ORDER`: **UTF-8, UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE, ISO-8859, windows-1252, ISO-8859, windows-1250, ISO-8859, ISO-8859, ISO-8859, windows-1253, ISO-8859, windows-1255, ISO-8859, windows-1251, windows-1256, KOI8-R, ISO-8859, windows-1254, Shift_JIS, GB18030, EUC-JP, EUC-KR, Big5, ISO-2022, ISO-2022, ISO-2022, IBM424_rtl, IBM424_ltr, IBM420_rtl, IBM420_ltr**: 检测到的字符集的决定性顺序 - 如果检测到的字符集具有相等的置信度,则优先選择列表中较早出現的字符集,而不是较晚出現的字符集。添加“defaults”将会将未命名的字符集放置在該点。 - `ANSI_CHARSET`: **_empty_**: 默认的 ANSI 字符集,用于覆盖非 UTF-8 字符集。 -- `FORCE_PRIVATE`: **false**: 强制使每个新仓库变为私有。 -- `DEFAULT_PRIVATE`: **last**: 创建新仓库时默认为私有:`last`, `private`, `public`。 -- `DEFAULT_PUSH_CREATE_PRIVATE`: **true**: 使用推送创建新仓库时默认为私有。 -- `MAX_CREATION_LIMIT`: **-1**: 每个用户的全局仓库创建上限, - `-1` 代表无限制. +- `FORCE_PRIVATE`: **false**: 强制使每个新存放庫变為私有。 +- `DEFAULT_PRIVATE`: **last**: 建立新存放庫时默认為私有:`last`, `private`, `public`。 +- `DEFAULT_PUSH_CREATE_PRIVATE`: **true**: 使用推送建立新存放庫时默认為私有。 +- `MAX_CREATION_LIMIT`: **-1**: 每个使用者的全局存放庫建立上限, + `-1` 代表無限制. - `PREFERRED_LICENSES`: **Apache License 2.0,MIT License**: 要放置在列表顶部的指定许可证。 - 名称必须与 options/license 或 custom/options/license 中的文件名匹配。 -- `DISABLE_HTTP_GIT`: **false**: 禁用 HTTP 协议与仓库进行 + 名稱必須与 options/license 或 custom/options/license 中的文件名匹配。 +- `DISABLE_HTTP_GIT`: **false**: 禁用 HTTP 协议与存放庫進行 交互的能力。 - `USE_COMPAT_SSH_URI`: **false**: 当使用默认的 SSH 端口时,强制使用 ssh://克隆 URL, 而不是 scp-style uri。 -- `GO_GET_CLONE_URL_PROTOCOL`: **https**: 用于 "go get" 请求的值,返回仓库的 URL 作为 https 或 ssh, - 默认为 https。 +- `GO_GET_CLONE_URL_PROTOCOL`: **https**: 用于 "go get" 請求的值,返回存放庫的 URL 作為 https 或 ssh, + 默认為 https。 - `ACCESS_CONTROL_ALLOW_ORIGIN`: **_empty_**:用于 Access-Control-Allow-Origin 标头的值, 默认不提供。 警告:如果您不提供正确的值,这可能对您的网站造成危害。 -- `DEFAULT_CLOSE_ISSUES_VIA_COMMITS_IN_ANY_BRANCH`: **false**: 如果非默认分支上的提交将问题标记为已关闭,则关闭该问题。 -- `ENABLE_PUSH_CREATE_USER`: **false**: 允许用户将本地存储库推送到 Gitea,并为用户自动创建它们。 -- `ENABLE_PUSH_CREATE_ORG`: **false**: 允许用户将本地存储库推送到 Gitea,并为组织自动创建它们。 -- `DISABLED_REPO_UNITS`: **_empty_**: 逗号分隔的全局禁用的仓库单元列表。允许的值是:: \[repo.issues, repo.ext_issues, repo.pulls, repo.wiki, repo.ext_wiki, repo.projects, repo.packages, repo.actions\] -- `DEFAULT_REPO_UNITS`: **repo.code,repo.releases,repo.issues,repo.pulls,repo.wiki,repo.projects,repo.packages,repo.actions**: 逗号分隔的默认新仓库单元列表。允许的值是:: \[repo.code, repo.releases, repo.issues, repo.pulls, repo.wiki, repo.projects, repo.packages, repo.actions\]. 注意:目前无法停用代码和发布。如果您指定了默认的仓库单元,您仍应将它们列出以保持未来的兼容性。外部 wiki 和问题跟踪器不能默认启用,因为它需要额外的设置。禁用的仓库单元将不会添加到新的仓库中,无论它是否在默认列表中。 -- `DEFAULT_FORK_REPO_UNITS`: **repo.code,repo.pulls**: 逗号分隔的默认分叉仓库单元列表。允许的值和规则与`DEFAULT_REPO_UNITS`相同。 -- `DEFAULT_MIRROR_REPO_UNITS`: **repo.code,repo.releases,repo.issues,repo.wiki,repo.projects,repo.packages**: 逗号分隔的默认镜像仓库单元列表。允许的值和规则与`DEFAULT_REPO_UNITS`相同。 -- `DEFAULT_TEMPLATE_REPO_UNITS`: **repo.code,repo.releases,repo.issues,repo.pulls,repo.wiki,repo.projects,repo.packages**: 逗号分隔的默认模板仓库单元列表。允许的值和规则与`DEFAULT_REPO_UNITS`相同。 -- `PREFIX_ARCHIVE_FILES`: **true**: 通过将存档文件放置在以仓库命名的目录中来添加前缀。 +- `DEFAULT_CLOSE_ISSUES_VIA_COMMITS_IN_ANY_BRANCH`: **false**: 如果非默认分支上的提交将问题标记為已关闭,则关闭該问题。 +- `ENABLE_PUSH_CREATE_USER`: **false**: 允许使用者将本地存儲库推送到 Gitea,並為使用者自动建立它们。 +- `ENABLE_PUSH_CREATE_ORG`: **false**: 允许使用者将本地存儲库推送到 Gitea,並為組織自动建立它们。 +- `DISABLED_REPO_UNITS`: **_empty_**: 逗号分隔的全局禁用的存放庫單元列表。允许的值是:: \[repo.issues, repo.ext_issues, repo.pulls, repo.wiki, repo.ext_wiki, repo.projects, repo.packages, repo.actions\] +- `DEFAULT_REPO_UNITS`: **repo.code,repo.releases,repo.issues,repo.pulls,repo.wiki,repo.projects,repo.packages,repo.actions**: 逗号分隔的默认新存放庫單元列表。允许的值是:: \[repo.code, repo.releases, repo.issues, repo.pulls, repo.wiki, repo.projects, repo.packages, repo.actions\]. 注意:目前無法停用代码和發佈。如果您指定了默认的存放庫單元,您仍應将它们列出以保持未来的兼容性。外部 wiki 和问题跟踪器不能默认启用,因為它需要额外的设置。禁用的存放庫單元将不会添加到新的存放庫中,無论它是否在默认列表中。 +- `DEFAULT_FORK_REPO_UNITS`: **repo.code,repo.pulls**: 逗号分隔的默认分叉存放庫單元列表。允许的值和規則与`DEFAULT_REPO_UNITS`相同。 +- `DEFAULT_MIRROR_REPO_UNITS`: **repo.code,repo.releases,repo.issues,repo.wiki,repo.projects,repo.packages**: 逗号分隔的默认镜像存放庫單元列表。允许的值和規則与`DEFAULT_REPO_UNITS`相同。 +- `DEFAULT_TEMPLATE_REPO_UNITS`: **repo.code,repo.releases,repo.issues,repo.pulls,repo.wiki,repo.projects,repo.packages**: 逗号分隔的默认模板存放庫單元列表。允许的值和規則与`DEFAULT_REPO_UNITS`相同。 +- `PREFIX_ARCHIVE_FILES`: **true**: 通過将存檔文件放置在以存放庫命名的目錄中来添加前缀。 - `DISABLE_MIGRATIONS`: **false**: 禁用迁移功能。 - `DISABLE_STARS`: **false**: 禁用点赞功能。 -- `DEFAULT_BRANCH`: **main**: 所有仓库的默认分支名称。 -- `ALLOW_ADOPTION_OF_UNADOPTED_REPOSITORIES`: **false**: 允许非管理员用户认领未被认领的仓库。 -- `ALLOW_DELETION_OF_UNADOPTED_REPOSITORIES`: **false**: 允许非管理员用户删除未被认领的仓库。 -- `DISABLE_DOWNLOAD_SOURCE_ARCHIVES`: **false**: 不允许从用户界面下载源代码存档文件。 -- `ALLOW_FORK_WITHOUT_MAXIMUM_LIMIT`: **true**: 允许无限制得派生仓库。 +- `DEFAULT_BRANCH`: **main**: 所有存放庫的默认分支名稱。 +- `ALLOW_ADOPTION_OF_UNADOPTED_REPOSITORIES`: **false**: 允许非管理员使用者认领未被认领的存放庫。 +- `ALLOW_DELETION_OF_UNADOPTED_REPOSITORIES`: **false**: 允许非管理员使用者删除未被认领的存放庫。 +- `DISABLE_DOWNLOAD_SOURCE_ARCHIVES`: **false**: 不允许从使用者界面下载源代码存檔文件。 +- `ALLOW_FORK_WITHOUT_MAXIMUM_LIMIT`: **true**: 允许無限制得派生存放庫。 -### 仓库 - 编辑器 (`repository.editor`) +### 存放庫 - 编辑器 (`repository.editor`) -- `LINE_WRAP_EXTENSIONS`: **.txt,.md,.markdown,.mdown,.mkd,.livemd,**: 在 Monaco 编辑器中应该换行的文件扩展名列表。用逗号分隔扩展名。要对没有扩展名的文件进行换行,只需放置一个逗号。 -- `PREVIEWABLE_FILE_MODES`: **markdown**: 具有预览 API 的有效文件模式,例如 `api/v1/markdown`。用逗号分隔各个值。如果文件扩展名不匹配,编辑模式下的预览选项卡将不会显示。 +- `LINE_WRAP_EXTENSIONS`: **.txt,.md,.markdown,.mdown,.mkd,.livemd,**: 在 Monaco 编辑器中應該换行的文件扩展名列表。用逗号分隔扩展名。要对没有扩展名的文件進行换行,只需放置一个逗号。 +- `PREVIEWABLE_FILE_MODES`: **markdown**: 具有预览 API 的有效文件模式,例如 `api/v1/markdown`。用逗号分隔各个值。如果文件扩展名不匹配,编辑模式下的预览選项卡将不会显示。 -### 仓库 - 合并请求 (`repository.pull-request`) +### 存放庫 - 合並請求 (`repository.pull-request`) -- `WORK_IN_PROGRESS_PREFIXES`: **WIP:,\[WIP\]**: 在拉取请求标题中用于标记工作正在进行中的前缀列表。 - 这些前缀在不区分大小写的情况下进行匹配。 -- `CLOSE_KEYWORDS`: **close**, **closes**, **closed**, **fix**, **fixes**, **fixed**, **resolve**, **resolves**, **resolved**: 在拉取请求评论中用于自动关闭相关问题的关键词列表。 -- `REOPEN_KEYWORDS`: **reopen**, **reopens**, **reopened**: 在拉取请求评论中用于自动重新打开相关问题的 - 关键词列表。 -- `DEFAULT_MERGE_STYLE`: **merge**: 设置创建仓库的默认合并方式,可选: `merge`, `rebase`, `rebase-merge`, `squash`, `fast-forward-only` -- `DEFAULT_MERGE_MESSAGE_COMMITS_LIMIT`: **50**: 在默认合并消息中,对于`squash`提交,最多包括此数量的提交。设置为 -1 以包括所有提交。 -- `DEFAULT_MERGE_MESSAGE_SIZE`: **5120**: 在默认的合并消息中,对于`squash`提交,限制提交消息的大小。设置为 `-1`以取消限制。仅在`POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES`为`true`时使用。 -- `DEFAULT_MERGE_MESSAGE_ALL_AUTHORS`: **false**: 在默认合并消息中,对于`squash`提交,遍历所有提交以包括所有作者的`Co-authored-by`,否则仅使用限定列表中的作者。 -- `DEFAULT_MERGE_MESSAGE_MAX_APPROVERS`: **10**:在默认合并消息中,限制列出的审批者数量为`Reviewed-by`:。设置为 `-1` 以包括所有审批者。 -- `DEFAULT_MERGE_MESSAGE_OFFICIAL_APPROVERS_ONLY`: **true**: 在默认合并消息中,仅包括官方允许审查的审批者。 -- `POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES`: **false**: 在默认的 squash 合并消息中,包括构成拉取请求的所有提交的提交消息。 -- `ADD_CO_COMMITTER_TRAILERS`: **true**: 如果提交者与作者不匹配,在合并提交消息中添加`co-authored-by`和`co-committed-by`标记。 -- `TEST_CONFLICTING_PATCHES_WITH_GIT_APPLY`:使用三方合并方法测试`PR Patch`以发现是否存在冲突。如果此设置`true`,将使用`git apply`重新测试冲突的`PR Pathch` - 这是 1.18(和之前版本)中的先前行为,但效率相对较低。如果发现需要此设置,请报告。 +- `WORK_IN_PROGRESS_PREFIXES`: **WIP:,\[WIP\]**: 在拉取請求标题中用于标记工作正在進行中的前缀列表。 + 这些前缀在不区分大小写的情况下進行匹配。 +- `CLOSE_KEYWORDS`: **close**, **closes**, **closed**, **fix**, **fixes**, **fixed**, **resolve**, **resolves**, **resolved**: 在拉取請求评论中用于自动关闭相关问题的关键詞列表。 +- `REOPEN_KEYWORDS`: **reopen**, **reopens**, **reopened**: 在拉取請求评论中用于自动重新打开相关问题的 + 关键詞列表。 +- `DEFAULT_MERGE_STYLE`: **merge**: 设置建立存放庫的默认合並方式,可選: `merge`, `rebase`, `rebase-merge`, `squash`, `fast-forward-only` +- `DEFAULT_MERGE_MESSAGE_COMMITS_LIMIT`: **50**: 在默认合並消息中,對於`squash`提交,最多包括此数量的提交。设置為 -1 以包括所有提交。 +- `DEFAULT_MERGE_MESSAGE_SIZE`: **5120**: 在默认的合並消息中,對於`squash`提交,限制提交消息的大小。设置為 `-1`以取消限制。僅在`POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES`為`true`时使用。 +- `DEFAULT_MERGE_MESSAGE_ALL_AUTHORS`: **false**: 在默认合並消息中,對於`squash`提交,遍历所有提交以包括所有作者的`Co-authored-by`,否则僅使用限定列表中的作者。 +- `DEFAULT_MERGE_MESSAGE_MAX_APPROVERS`: **10**:在默认合並消息中,限制列出的审批者数量為`Reviewed-by`:。设置為 `-1` 以包括所有审批者。 +- `DEFAULT_MERGE_MESSAGE_OFFICIAL_APPROVERS_ONLY`: **true**: 在默认合並消息中,僅包括官方允许审查的审批者。 +- `POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES`: **false**: 在默认的 squash 合並消息中,包括构成拉取請求的所有提交的提交消息。 +- `ADD_CO_COMMITTER_TRAILERS`: **true**: 如果提交者与作者不匹配,在合並提交消息中添加`co-authored-by`和`co-committed-by`标记。 +- `TEST_CONFLICTING_PATCHES_WITH_GIT_APPLY`:使用三方合並方法测试`PR Patch`以发現是否存在冲突。如果此设置`true`,将使用`git apply`重新测试冲突的`PR Pathch` - 这是 1.18(和之前版本)中的先前行為,但效率相对较低。如果发現需要此设置,請报告。 -### 仓库 - 工单 (`repository.issue`) +### 存放庫 - 工單 (`repository.issue`) -- `LOCK_REASONS`: **Too heated,Off-topic,Resolved,Spam**: 合并请求或工单被锁定的原因列表。 -- `MAX_PINNED`: **3**: 每个仓库的最大可固定工单数量。设置为 0 禁用固定工单。 +- `LOCK_REASONS`: **Too heated,Off-topic,Resolved,Spam**: 合並請求或工單被锁定的原因列表。 +- `MAX_PINNED`: **3**: 每个存放庫的最大可固定工單数量。设置為 0 禁用固定工單。 -### 仓库 - 文件上传 (`repository.upload`) +### 存放庫 - 文件上传 (`repository.upload`) -- `ENABLED`: **true**: 是否启用仓库文件上传。 -- `TEMP_PATH`: **data/tmp/uploads**: 文件上传的临时保存路径(在 Gitea 重启的时候该目录会被清空)。 -- `ALLOWED_TYPES`: **_empty_**: 以逗号分割的列表,代表支持上传的文件类型。(`.zip`), mime 类型 (`text/plain`) or 通配符类型 (`image/*`, `audio/*`, `video/*`). 为空或者 `*/*`代表允许所有类型文件。 +- `ENABLED`: **true**: 是否启用存放庫文件上传。 +- `TEMP_PATH`: **data/tmp/uploads**: 文件上传的临时保存路径(在 Gitea 重启的时候該目錄会被清空)。 +- `ALLOWED_TYPES`: **_empty_**: 以逗号分割的列表,代表支持上传的文件類型。(`.zip`), mime 類型 (`text/plain`) or 通配符類型 (`image/*`, `audio/*`, `video/*`). 為空或者 `*/*`代表允许所有類型文件。 - `FILE_MAX_SIZE`: **50**: 每个文件的最大大小(MB)。 - `MAX_FILES`: **5**: 每次上传的最大文件数。 -### 仓库 - 版本发布 (`repository.release`) +### 存放庫 - 版本發佈 (`repository.release`) -- `ALLOWED_TYPES`: **_empty_**: 允许发布的文件类型列表,用逗号分隔 。如压缩包类型(`.zip`), mime 类型 (`text/plain`) ,也支持通配符 (`image/*`, `audio/*`, `video/*`)。 空值或者 `*/*` 代表允许所有类型。 -- `DEFAULT_PAGING_NUM`: **10**: 默认的发布版本页面分页大小 -- 关于版本发布相关的附件设置,详见`附件`部分。 +- `ALLOWED_TYPES`: **_empty_**: 允许發佈的文件類型列表,用逗号分隔 。如压缩包類型(`.zip`), mime 類型 (`text/plain`) ,也支持通配符 (`image/*`, `audio/*`, `video/*`)。 空值或者 `*/*` 代表允许所有類型。 +- `DEFAULT_PAGING_NUM`: **10**: 默认的發佈版本页面分页大小 +- 关于版本發佈相关的附件设置,详见`附件`部分。 -### 仓库 - Signing (`repository.signing`) +### 存放庫 - Signing (`repository.signing`) - `SIGNING_KEY`: **default**: \[none, KEYID, default \]: 用于签名的密钥 -- `SIGNING_NAME` & `SIGNING_EMAIL`: 如果`SIGNING_KEY`提供了一个 KEYID,将使用这些作为签名者的姓名和电子邮件地址。这些应与密钥的公开姓名和电子邮件地址相匹配。 +- `SIGNING_NAME` & `SIGNING_EMAIL`: 如果`SIGNING_KEY`提供了一个 KEYID,将使用这些作為签名者的姓名和电子邮件地址。这些應与密钥的公开姓名和电子邮件地址相匹配。 - `INITIAL_COMMIT`: **always**: \[never, pubkey, twofa, always\]: 签名初始提交。 - `never`: 永不签名 - - `pubkey`: 仅在用户具有公钥时签名 - - `twofa`: 仅在用户使用双因素身份验证登录时签名 + - `pubkey`: 僅在使用者具有公钥时签名 + - `twofa`: 僅在使用者使用双因素身份驗證登入时签名 - `always`: 始终签名 - - 除了 never 和 always 之外的选项可以组合为逗号分隔的列表。 -- `DEFAULT_TRUST_MODEL`: **collaborator**: \[collaborator, committer, collaboratorcommitter\]: 用于验证提交的默认信任模型。 + - 除了 never 和 always 之外的選项可以组合為逗号分隔的列表。 +- `DEFAULT_TRUST_MODEL`: **collaborator**: \[collaborator, committer, collaboratorcommitter\]: 用于驗證提交的默认信任模型。 - `collaborator`: 信任协作者密钥签名的签名。 - - `committer`: 信任与提交者匹配的签名(这与 GitHub 匹配,并会强制 Gitea 签名的提交具有 Gitea 作为提交者)。 + - `committer`: 信任与提交者匹配的签名(这与 GitHub 匹配,並会强制 Gitea 签名的提交具有 Gitea 作為提交者)。 - `collaboratorcommitter`: 信任与提交者匹配的协作者密钥签名的签名。 -- `WIKI`: **never**: \[never, pubkey, twofa, always, parentsigned\]: 对 wiki 提交进行签名。 -- `CRUD_ACTIONS`: **pubkey, twofa, parentsigned**: \[never, pubkey, twofa, parentsigned, always\]: 对 CRUD 操作进行签名。 - - 与上面相同的选项,增加了: - - `parentsigned`: 仅在父提交进行了签名时才进行签名。 -- `MERGES`: **pubkey, twofa, basesigned, commitssigned**: \[never, pubkey, twofa, approved, basesigned, commitssigned, always\]: 对合并操作进行签名。 - - `approved`: 仅对已批准的合并操作进行签名,适用于受保护的分支。 - - `basesigned`: 仅在基础仓库的父提交进行了签名时才进行签名。 - - `headsigned`: 仅在头分支的头提交进行了签名时才进行签名。 - - `commitssigned`: 仅在头分支中的所有提交到合并点都进行了签名时才进行签名。 +- `WIKI`: **never**: \[never, pubkey, twofa, always, parentsigned\]: 对 wiki 提交進行签名。 +- `CRUD_ACTIONS`: **pubkey, twofa, parentsigned**: \[never, pubkey, twofa, parentsigned, always\]: 对 CRUD 操作進行签名。 + - 与上面相同的選项,增加了: + - `parentsigned`: 僅在父提交進行了签名时才進行签名。 +- `MERGES`: **pubkey, twofa, basesigned, commitssigned**: \[never, pubkey, twofa, approved, basesigned, commitssigned, always\]: 对合並操作進行签名。 + - `approved`: 僅对已批准的合並操作進行签名,适用于受保护的分支。 + - `basesigned`: 僅在基础存放庫的父提交進行了签名时才進行签名。 + - `headsigned`: 僅在头分支的头提交進行了签名时才進行签名。 + - `commitssigned`: 僅在头分支中的所有提交到合並点都進行了签名时才進行签名。 -### 仓库 - Local (`repository.local`) +### 存放庫 - Local (`repository.local`) -- `LOCAL_COPY_PATH`: **tmp/local-repo**:临时本地仓库副本的路径。默认为 tmp/local-repo(内容在 Gitea 重新启动时被删除) +- `LOCAL_COPY_PATH`: **tmp/local-repo**:临时本地存放庫副本的路径。默认為 tmp/local-repo(内容在 Gitea 重新启动时被删除) -### 仓库 - MIME type mapping (`repository.mimetype_mapping`) +### 存放庫 - MIME type mapping (`repository.mimetype_mapping`) -配置用于根据可下载文件的文件扩展名设置预期的 MIME 类型。配置以键值对的形式呈现,文件扩展名以`.`开头。 +配置用于根据可下载文件的文件扩展名设置预期的 MIME 類型。配置以键值对的形式呈現,文件扩展名以`.`開頭。 以下配置在下载具有`.apk`文件扩展名的文件时设置`Content-Type: application/vnd.android.package-archive`头部。 @@ -196,183 +196,183 @@ aliases: ## 跨域 (`cors`) - `ENABLED`: **false**: 启用 CORS 头部(默认禁用) -- `ALLOW_DOMAIN`: **\***: 允许请求的域名列表 -- `METHODS`: **GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS**: 允许发起的请求方式列表 -- `MAX_AGE`: **10m**: 缓存响应的最大时间 -- `ALLOW_CREDENTIALS`: **false**: 允许带有凭据的请求 -- `HEADERS`: **Content-Type,User-Agent**: 允许请求携带的头部 +- `ALLOW_DOMAIN`: **\***: 允许請求的域名列表 +- `METHODS`: **GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS**: 允许发起的請求方式列表 +- `MAX_AGE`: **10m**: 缓存響應的最大时间 +- `ALLOW_CREDENTIALS`: **false**: 允许带有凭据的請求 +- `HEADERS`: **Content-Type,User-Agent**: 允许請求携带的头部 - `X_FRAME_OPTIONS`: **SAMEORIGIN**: 详见 `X-Frame-Options`HTTP 头部. ## 界面 (`ui`) -- `EXPLORE_PAGING_NUM`: **20**: 探索页面每页显示的仓库数量。 -- `ISSUE_PAGING_NUM`: **20**: 工单页面每页显示的工单数量。 -- `MEMBERS_PAGING_NUM`: **20**: 组织成员页面每页显示的成员数量。 +- `EXPLORE_PAGING_NUM`: **20**: 探索页面每页显示的存放庫数量。 +- `ISSUE_PAGING_NUM`: **20**: 工單页面每页显示的工單数量。 +- `MEMBERS_PAGING_NUM`: **20**: 組織成员页面每页显示的成员数量。 - `FEED_MAX_COMMIT_NUM`: **5**: 活动流页面显示的最大提交数量。 - `FEED_PAGING_NUM`: **20**: 活动流页面显示的最大活动数量。 -- `SITEMAP_PAGING_NUM`: **20**: 在单个子 SiteMap 中显示的项数。 +- `SITEMAP_PAGING_NUM`: **20**: 在單个子 SiteMap 中显示的项数。 - `GRAPH_MAX_COMMIT_NUM`: **100**: 提交图中显示的最大 commit 数量。 - `CODE_COMMENT_LINES`: **4**: 在代码评论中能够显示的最大代码行数。 -- `DEFAULT_THEME`: **gitea-auto**: 在 Gitea 安装时候设置的默认主题,自定义的主题可以通过 `{CustomPath}/public/assets/css/theme-*.css` 提供。 -- `SHOW_USER_EMAIL`: **true**: 用户的电子邮件是否应该显示在`Explore Users`页面中。 -- `THEMES`: **_empty_**: 所有可用的主题(由 `{CustomPath}/public/assets/css/theme-*.css` 提供)。允许用户选择个性化的主题, -- `MAX_DISPLAY_FILE_SIZE`: **8388608**: 能够显示文件的最大大小(默认为 8MiB)。 -- `REACTIONS`: 用户可以在问题(Issue)、Pull Request(PR)以及评论中选择的所有可选的反应。 +- `DEFAULT_THEME`: **gitea-auto**: 在 Gitea 安裝时候设置的默认主题,自定义的主题可以通過 `{CustomPath}/public/assets/css/theme-*.css` 提供。 +- `SHOW_USER_EMAIL`: **true**: 使用者的电子邮件是否應該显示在`Explore Users`页面中。 +- `THEMES`: **_empty_**: 所有可用的主题(由 `{CustomPath}/public/assets/css/theme-*.css` 提供)。允许使用者選择个性化的主题, +- `MAX_DISPLAY_FILE_SIZE`: **8388608**: 能够显示文件的最大大小(默认為 8MiB)。 +- `REACTIONS`: 使用者可以在问题(Issue)、Pull Request(PR)以及评论中選择的所有可選的反應。 这些值可以是表情符号别名(例如::smile:)或 Unicode 表情符号。 - 对于自定义的反应,在 public/assets/img/emoji/ 目录下添加一个紧密裁剪的正方形图像,文件名为 reaction_name.png。 + 對於自定义的反應,在 public/assets/img/emoji/ 目錄下添加一个紧密裁剪的正方形图像,文件名為 reaction_name.png。 - `CUSTOM_EMOJIS`: **gitea, codeberg, gitlab, git, github, gogs**: 不在 utf8 标准中定义的额外表情符号。 - 默认情况下,我们支持 Gitea 表情符号(:gitea:)。要添加更多表情符号,请将它们复制到 public/assets/img/emoji/ 目录下, - 并将其添加到此配置中。 -- `DEFAULT_SHOW_FULL_NAME`: **false**: 是否在可能的情况下显示用户的全名。如果没有设置全名,则将使用用户名。 -- `SEARCH_REPO_DESCRIPTION`: **true**: 是否在探索页面上的仓库搜索中搜索描述。 -- `ONLY_SHOW_RELEVANT_REPOS`: **false** 在没有指定关键字并使用默认排序时,是否仅在探索页面上显示相关的仓库。 - 如果一个仓库是分叉或者没有元数据(没有描述、图标、主题),则被视为不相关的仓库。 + 默认情况下,我们支持 Gitea 表情符号(:gitea:)。要添加更多表情符号,請将它们复制到 public/assets/img/emoji/ 目錄下, + 並将其添加到此配置中。 +- `DEFAULT_SHOW_FULL_NAME`: **false**: 是否在可能的情况下显示使用者的全名。如果没有设置全名,则将使用使用者名。 +- `SEARCH_REPO_DESCRIPTION`: **true**: 是否在探索页面上的存放庫搜索中搜索描述。 +- `ONLY_SHOW_RELEVANT_REPOS`: **false** 在没有指定关键字並使用默认排序时,是否僅在探索页面上显示相关的存放庫。 + 如果一个存放庫是分叉或者没有元数据(没有描述、图标、主题),则被视為不相关的存放庫。 ### 界面 - 管理员 (`ui.admin`) -- `USER_PAGING_NUM`: **50**: 单页显示的用户数量。 -- `REPO_PAGING_NUM`: **50**: 单页显示的仓库数量。 -- `NOTICE_PAGING_NUM`: **25**: 单页显示的通知数量。 -- `ORG_PAGING_NUM`: **50**: 单页显示的组织数量。 +- `USER_PAGING_NUM`: **50**: 單页显示的使用者数量。 +- `REPO_PAGING_NUM`: **50**: 單页显示的存放庫数量。 +- `NOTICE_PAGING_NUM`: **25**: 單页显示的通知数量。 +- `ORG_PAGING_NUM`: **50**: 單页显示的組織数量。 -### 界面 - 用户 (`ui.user`) +### 界面 - 使用者 (`ui.user`) -- `REPO_PAGING_NUM`: **15**: 单页显示的仓库数量。 -- `ORG_PAGING_NUM`: **15**: 个人信息页展示的组织数量。 +- `REPO_PAGING_NUM`: **15**: 單页显示的存放庫数量。 +- `ORG_PAGING_NUM`: **15**: 个人信息页展示的組織数量。 ### 界面 - 元信息 (`ui.meta`) -- `AUTHOR`: **Gitea - Git with a cup of tea**: 主页的作者元标签。 -- `DESCRIPTION`: **Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go**: 主页的描述元标签。 -- `KEYWORDS`: **go,git,self-hosted,gitea**: 首页关键词元标签。 +- `AUTHOR`: **Gitea - Git with a cup of tea**: 主页的作者元標籤。 +- `DESCRIPTION`: **Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go**: 主页的描述元標籤。 +- `KEYWORDS`: **go,git,self-hosted,gitea**: 首页关键詞元標籤。 ### 界面 - 通知 (`ui.notification`) -- `MIN_TIMEOUT`: **10s**: 这些选项控制通知端点定期轮询以更新通知计数。在页面加载后,通知计数将在` MIN_TIMEOUT`之后进行检查。如果通知计数未更改,超时时间将按照`TIMEOUT_STEP`增加到`MAX_TIMEOUT`。将 `MIN_TIMEOUT`设置为 -1 以关闭该功能。 +- `MIN_TIMEOUT`: **10s**: 这些選项控制通知端点定期轮询以更新通知计数。在页面加载后,通知计数将在` MIN_TIMEOUT`之后進行检查。如果通知计数未更改,超时时间将按照`TIMEOUT_STEP`增加到`MAX_TIMEOUT`。将 `MIN_TIMEOUT`设置為 -1 以关闭該功能。 - `MAX_TIMEOUT`: **60s**. - `TIMEOUT_STEP`: **10s**. -- `EVENT_SOURCE_UPDATE_TIME`: **10s**: 该设置确定了查询数据库以更新通知计数的频率。如果浏览器客户端支持`EventSource`和`SharedWorker`,则优先使用`SharedWorker`而不是轮询通知端点。将其设置为 -1 可以禁用 `EventSource`。 +- `EVENT_SOURCE_UPDATE_TIME`: **10s**: 該设置确定了查询数据库以更新通知计数的频率。如果浏览器客户端支持`EventSource`和`SharedWorker`,则优先使用`SharedWorker`而不是轮询通知端点。将其设置為 -1 可以禁用 `EventSource`。 ### 界面 - SVG Images (`ui.svg`) -- `ENABLE_RENDER`: **true**: 是否将 SVG 文件呈现为图像。如果禁用了 SVG 渲染,SVG 文件将显示为文本,无法作为图像嵌入到 Markdown 文件中。 +- `ENABLE_RENDER`: **true**: 是否将 SVG 文件呈現為图像。如果禁用了 SVG 渲染,SVG 文件将显示為文本,無法作為图像嵌入到 Markdown 文件中。 ### 界面 - CSV Files (`ui.csv`) -- `MAX_FILE_SIZE`: **524288** (512kb): 以字节为单位允许将 CSV 文件呈现为表格的最大文件大小(将其设置为 0 表示没有限制)。 -- `MAX_ROWS`: **2500** : 最大允许的 CSV 文件行数。 (设置为 0 不限制) +- `MAX_FILE_SIZE`: **524288** (512kb): 以字节為單位允许将 CSV 文件呈現為表格的最大文件大小(将其设置為 0 表示没有限制)。 +- `MAX_ROWS`: **2500** : 最大允许的 CSV 文件行数。 (设置為 0 不限制) ## Markdown (`markdown`) -- `ENABLE_HARD_LINE_BREAK_IN_COMMENTS`: **true**: 在评论中将软换行符呈现为硬换行符, - 这意味着段落之间的单个换行符将导致换行, - 并且不需要在段落后添加尾随空格来强制换行。 -- `ENABLE_HARD_LINE_BREAK_IN_DOCUMENTS`: **false**: 在文档中将软换行符呈现为硬换行符, - 这意味着段落之间的单个换行符将导致换行, - 并且不需要在段落后添加尾随空格来强制换行。 -- `CUSTOM_URL_SCHEMES`: 使用逗号分隔的列表(ftp、git、svn)来指示要在 Markdown 中呈现的附加 URL 超链接。 - 以 http 和 https 开头的 URL 始终显示。 - 如果此条目为空,则允许所有 URL 方案。 -- `FILE_EXTENSIONS`: **.md,.markdown,.mdown,.mkd,.livemd**: 应呈现/编辑为 Markdown 的文件扩展名列表。使用逗号分隔扩展名。要将没有任何扩展名的文件呈现为 Markdown,请只需放置一个逗号。 -- `ENABLE_MATH`: **true**: 启用对`\(...\)`, `\[...\]`, `$...$`和`$$...$$` 作为数学块的检测。 +- `ENABLE_HARD_LINE_BREAK_IN_COMMENTS`: **true**: 在评论中将软换行符呈現為硬换行符, + 这意味着段落之间的單个换行符将导致换行, + 並且不需要在段落后添加尾随空格来强制换行。 +- `ENABLE_HARD_LINE_BREAK_IN_DOCUMENTS`: **false**: 在文檔中将软换行符呈現為硬换行符, + 这意味着段落之间的單个换行符将导致换行, + 並且不需要在段落后添加尾随空格来强制换行。 +- `CUSTOM_URL_SCHEMES`: 使用逗号分隔的列表(ftp、git、svn)来指示要在 Markdown 中呈現的附加 URL 超链接。 + 以 http 和 https 開頭的 URL 始终显示。 + 如果此条目為空,则允许所有 URL 方案。 +- `FILE_EXTENSIONS`: **.md,.markdown,.mdown,.mkd,.livemd**: 應呈現/编辑為 Markdown 的文件扩展名列表。使用逗号分隔扩展名。要将没有任何扩展名的文件呈現為 Markdown,請只需放置一个逗号。 +- `ENABLE_MATH`: **true**: 启用对`\(...\)`, `\[...\]`, `$...$`和`$$...$$` 作為数学块的检测。 ## 服务器 (`server`) -- `APP_DATA_PATH`: **_`AppWorkPath`_/data**: 这是存储数据的默认根路径。 +- `APP_DATA_PATH`: **_`AppWorkPath`_/data**: 这是存儲数据的默认根路径。 - `PROTOCOL`: **http**: \[http, https, fcgi, http+unix, fcgi+unix\] - `USE_PROXY_PROTOCOL`: **false**: 在连接中预期`PROXY`协议头。 -- `PROXY_PROTOCOL_TLS_BRIDGING`: **false**: 协议为 https 时,在`TLS`协商后预期`PROXY`协议头。 -- `PROXY_PROTOCOL_HEADER_TIMEOUT`: **5s**: 等待`PROXY`协议头的超时时间(设置为`0`表示没有超时)。 -- `PROXY_PROTOCOL_ACCEPT_UNKNOWN`: **false**:接受带有未知类型的`PROXY`协议头。 +- `PROXY_PROTOCOL_TLS_BRIDGING`: **false**: 协议為 https 时,在`TLS`协商后预期`PROXY`协议头。 +- `PROXY_PROTOCOL_HEADER_TIMEOUT`: **5s**: 等待`PROXY`协议头的超时时间(设置為`0`表示没有超时)。 +- `PROXY_PROTOCOL_ACCEPT_UNKNOWN`: **false**:接受带有未知類型的`PROXY`协议头。 - `DOMAIN`: **localhost**: 此服务器的域名。 - `ROOT_URL`: **`{PROTOCOL}://{DOMAIN}:{HTTP_PORT}/`**: 覆盖自动生成的公共 URL。 如果内部 URL 和外部 URL 不匹配(例如在 Docker 中),这很有用。 - `STATIC_URL_PREFIX`: **_empty_**: - 覆盖此选项以从不同的 URL 请求静态资源。 - 这包括 CSS 文件、图片、JS 文件和 Web 字体。 + 覆盖此選项以从不同的 URL 請求静态资源。 + 这包括 CSS 文件、图片、JS 文件和 Web 字體。 头像图片是动态资源,仍由 Gitea 提供。 - 选项可以是不同的路径,例如`/static`, 也可以是另一个域,例如`https://cdn.example.com`. - 请求会变成 `{ROOT_URL}/static/assets/css/index.css` 或 `https://cdn.example.com/assets/css/index.css` - 静态文件位于 Gitea 源代码仓库的`public/`目录中。 - 您可以将`STATIC_URL_PREFIX`请求代理到 Gitea 服务器以提供静态资源,或者将手动构建的 Gitea 资源从 `$GITEA_BUILD/public`复制到静态位置,例如`/var/www/assets`。确保`$STATIC_URL_PREFIX/assets/css/index.css`指向`/var/www/assets/css/index.css`。 + 選项可以是不同的路径,例如`/static`, 也可以是另一个域,例如`https://cdn.example.com`. + 請求会变成 `{ROOT_URL}/static/assets/css/index.css` 或 `https://cdn.example.com/assets/css/index.css` + 静态文件位于 Gitea 源代码存放庫的`public/`目錄中。 + 您可以将`STATIC_URL_PREFIX`請求代理到 Gitea 服务器以提供静态资源,或者将手动构建的 Gitea 资源从 `$GITEA_BUILD/public`复制到静态位置,例如`/var/www/assets`。确保`$STATIC_URL_PREFIX/assets/css/index.css`指向`/var/www/assets/css/index.css`。 - `HTTP_ADDR`: **0.0.0.0**: HTTP 监听地址。 - - 如果 `PROTOCOL` 设置为 `fcgi`,Gitea 将在由 - `HTTP_ADDR` 和 `HTTP_PORT` 配置设置定义的 TCP 套接字上监听 FastCGI 请求。 - - 如果 `PROTOCOL` 设置为 `http+unix` 或 `fcgi+unix`,则应该是要使用的 Unix 套接字文件的名称。相对路径将相对于 _`AppWorkPath`_ 被转换为绝对路径。 + - 如果 `PROTOCOL` 设置為 `fcgi`,Gitea 将在由 + `HTTP_ADDR` 和 `HTTP_PORT` 配置设置定义的 TCP 套接字上监听 FastCGI 請求。 + - 如果 `PROTOCOL` 设置為 `http+unix` 或 `fcgi+unix`,则應該是要使用的 Unix 套接字文件的名稱。相对路径将相對於 _`AppWorkPath`_ 被转换為绝对路径。 - `HTTP_PORT`: **3000**: HTTP 监听端口。 - - 如果 `PROTOCOL` 设置为 `fcgi`,Gitea 将在由 `HTTP_ADDR` 和 `HTTP_PORT` - 配置设置定义的 TCP 套接字上监听 FastCGI 请求。 + - 如果 `PROTOCOL` 设置為 `fcgi`,Gitea 将在由 `HTTP_ADDR` 和 `HTTP_PORT` + 配置设置定义的 TCP 套接字上监听 FastCGI 請求。 - `UNIX_SOCKET_PERMISSION`: **666**: Unix 套接字的权限。 - `LOCAL_ROOT_URL`: **`{PROTOCOL}://{HTTP_ADDR}:{HTTP_PORT}/`**: 用于访问网络服务的 Gitea 工作器(例如 SSH 更新)的本地(DMZ)URL。 在大多数情况下,您不需要更改默认值。 - 仅在您的 SSH 服务器节点与 HTTP 节点不同的情况下才修改它。对于不同的协议,默认值不同。如果 `PROTOCOL` - 是 `http+unix`,则默认值为 `http://unix/`。如果 `PROTOCOL` 是 `fcgi` 或 `fcgi+unix`,则默认值为 - `{PROTOCOL}://{HTTP_ADDR}:{HTTP_PORT}/`。如果监听在 `0.0.0.0`,则默认值为 + 僅在您的 SSH 服务器节点与 HTTP 节点不同的情况下才修改它。對於不同的协议,默认值不同。如果 `PROTOCOL` + 是 `http+unix`,则默认值為 `http://unix/`。如果 `PROTOCOL` 是 `fcgi` 或 `fcgi+unix`,则默认值為 + `{PROTOCOL}://{HTTP_ADDR}:{HTTP_PORT}/`。如果监听在 `0.0.0.0`,则默认值為 `{PROTOCOL}://localhost:{HTTP_PORT}/`, - 否则默认值为 `{PROTOCOL}://{HTTP_ADDR}:{HTTP_PORT}/`。 -- `LOCAL_USE_PROXY_PROTOCOL`: **`{USE_PROXY_PROTOCOL}`**: 在进行本地连接时传递 PROXY 协议头。 - 如果本地连接将经过代理,请将其设置为 false。 -- `PER_WRITE_TIMEOUT`: **30s**: 连接的任何写操作的超时时间。(将其设置为 -1 + 否则默认值為 `{PROTOCOL}://{HTTP_ADDR}:{HTTP_PORT}/`。 +- `LOCAL_USE_PROXY_PROTOCOL`: **`{USE_PROXY_PROTOCOL}`**: 在進行本地连接时传递 PROXY 协议头。 + 如果本地连接将经過代理,請将其设置為 false。 +- `PER_WRITE_TIMEOUT`: **30s**: 连接的任何写操作的超时时间。(将其设置為 -1 以禁用所有超时。) - `PER_WRITE_PER_KB_TIMEOUT`: **10s**: 连接每写入 1 KB 的超时时间。 - `DISABLE_SSH`: **false**: 当 SSH 不可用时禁用 SSH 功能。 - `START_SSH_SERVER`: **false**: 启用时,使用内置的 SSH 服务器。 - `SSH_SERVER_USE_PROXY_PROTOCOL`: **false**: 在与内置 SSH 服务器建立连接时,期望 PROXY 协议头。 -- `BUILTIN_SSH_SERVER_USER`: **`{RUN_USER}`**: 用于内置 SSH 服务器的用户名。 -- `SSH_USER`: **BUILTIN_SSH_SERVER_USER**: 在克隆 URL 中显示的 SSH 用户名。 - 如果设置为 `(DOER_USERNAME)`,将使用当前登录用户名作为克隆用的 SSH 用户名。 - 此配置项仅为自己配置 SSH 反向代理的高级用户准备, - 大多数用户应当把它留空,或者按需修改 `BUILTIN_SSH_SERVER_USER`。 +- `BUILTIN_SSH_SERVER_USER`: **`{RUN_USER}`**: 用于内置 SSH 服务器的使用者名。 +- `SSH_USER`: **BUILTIN_SSH_SERVER_USER**: 在克隆 URL 中显示的 SSH 使用者名。 + 如果设置為 `(DOER_USERNAME)`,将使用当前登入使用者名作為克隆用的 SSH 使用者名。 + 此配置项僅為自己配置 SSH 反向代理的高级使用者准备, + 大多数使用者應当把它留空,或者按需修改 `BUILTIN_SSH_SERVER_USER`。 - `SSH_DOMAIN`: **`{DOMAIN}`**: 此服务器的域名,用于显示的克隆 URL。 - `SSH_PORT`: **22**: 显示在克隆 URL 中的 SSH 端口。 - `SSH_LISTEN_HOST`: **0.0.0.0**: 内置 SSH 服务器的监听地址。 - `SSH_LISTEN_PORT`: **`{SSH_PORT}`**: 内置 SSH 服务器的端口。 -- `SSH_ROOT_PATH`: **~/.ssh**: SSH 目录的根路径。 -- `SSH_CREATE_AUTHORIZED_KEYS_FILE`: **true**: 当 Gitea 不使用内置 SSH 服务器时,默认情况下 Gitea 会创建一个 authorized_keys 文件。如果您打算使用 AuthorizedKeysCommand 功能,您应该关闭此选项。 -- `SSH_AUTHORIZED_KEYS_BACKUP`: **false**: 在重写所有密钥时启用 SSH 授权密钥备份,默认值为 false。 -- `SSH_TRUSTED_USER_CA_KEYS`: **_empty_**: 指定信任的证书颁发机构的公钥,用于对用户证书进行身份验证。多个密钥应以逗号分隔。例如 `ssh- ` 或 `ssh- , ssh- `。有关详细信息,请参阅 `sshd` 配置手册中的 `TrustedUserCAKeys` 部分。当为空时,不会创建文件,并且 `SSH_AUTHORIZED_PRINCIPALS_ALLOW` 默认为 `off`。 -- `SSH_TRUSTED_USER_CA_KEYS_FILENAME`: **`RUN_USER`/.ssh/gitea-trusted-user-ca-keys.pem**: Gitea 将管理的 `TrustedUserCaKeys` 文件的绝对路径。如果您正在运行自己的 SSH 服务器,并且想要使用 Gitea 管理的文件,您还需要修改您的 `sshd_config` 来指向此文件。官方的 Docker 映像将自动工作,无需进一步配置。 -- `SSH_AUTHORIZED_PRINCIPALS_ALLOW`: **off** 或 **username, email**: \[off, username, email, anything\]:指定允许用户用作 principal 的值。当设置为 `anything` 时,对 principal 字符串不执行任何检查。当设置为 `off` 时,不允许设置授权的 principal。 -- `SSH_CREATE_AUTHORIZED_PRINCIPALS_FILE`: **false/true**: 当 Gitea 不使用内置 SSH 服务器且 `SSH_AUTHORIZED_PRINCIPALS_ALLOW` 不为 `off` 时,默认情况下 Gitea 会创建一个 authorized_principals 文件。 -- `SSH_AUTHORIZED_PRINCIPALS_BACKUP`: **false/true**: 在重写所有密钥时启用 SSH 授权 principal 备份,默认值为 true(如果 `SSH_AUTHORIZED_PRINCIPALS_ALLOW` 不为 `off`)。 +- `SSH_ROOT_PATH`: **~/.ssh**: SSH 目錄的根路径。 +- `SSH_CREATE_AUTHORIZED_KEYS_FILE`: **true**: 当 Gitea 不使用内置 SSH 服务器时,默认情况下 Gitea 会建立一个 authorized_keys 文件。如果您打算使用 AuthorizedKeysCommand 功能,您應該关闭此選项。 +- `SSH_AUTHORIZED_KEYS_BACKUP`: **false**: 在重写所有密钥时启用 SSH 授权密钥备份,默认值為 false。 +- `SSH_TRUSTED_USER_CA_KEYS`: **_empty_**: 指定信任的证书颁发机构的公钥,用于对使用者证书進行身份驗證。多个密钥應以逗号分隔。例如 `ssh- ` 或 `ssh- , ssh- `。有关详细信息,請参阅 `sshd` 配置手册中的 `TrustedUserCAKeys` 部分。当為空时,不会建立文件,並且 `SSH_AUTHORIZED_PRINCIPALS_ALLOW` 默认為 `off`。 +- `SSH_TRUSTED_USER_CA_KEYS_FILENAME`: **`RUN_USER`/.ssh/gitea-trusted-user-ca-keys.pem**: Gitea 将管理的 `TrustedUserCaKeys` 文件的绝对路径。如果您正在运行自己的 SSH 服务器,並且想要使用 Gitea 管理的文件,您還需要修改您的 `sshd_config` 来指向此文件。官方的 Docker 映像将自动工作,無需進一步配置。 +- `SSH_AUTHORIZED_PRINCIPALS_ALLOW`: **off** 或 **username, email**: \[off, username, email, anything\]:指定允许使用者用作 principal 的值。当设置為 `anything` 时,对 principal 字符串不執行任何检查。当设置為 `off` 时,不允许设置授权的 principal。 +- `SSH_CREATE_AUTHORIZED_PRINCIPALS_FILE`: **false/true**: 当 Gitea 不使用内置 SSH 服务器且 `SSH_AUTHORIZED_PRINCIPALS_ALLOW` 不為 `off` 时,默认情况下 Gitea 会建立一个 authorized_principals 文件。 +- `SSH_AUTHORIZED_PRINCIPALS_BACKUP`: **false/true**: 在重写所有密钥时启用 SSH 授权 principal 备份,默认值為 true(如果 `SSH_AUTHORIZED_PRINCIPALS_ALLOW` 不為 `off`)。 - `SSH_AUTHORIZED_KEYS_COMMAND_TEMPLATE`: **`{{.AppPath}} --config={{.CustomConf}} serv key-{{.Key.ID}}`**: 设置用于传递授权密钥的命令模板。可能的密钥是:AppPath、AppWorkPath、CustomConf、CustomPath、Key,其中 Key 是 `models/asymkey.PublicKey`,其他是 shellquoted 字符串。 -- `SSH_SERVER_CIPHERS`: **chacha20-poly1305@openssh.com, aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, aes256-gcm@openssh.com**: 对于内置的 SSH 服务器,选择支持的 SSH 连接的加密方法,对于系统 SSH,此设置无效。 -- `SSH_SERVER_KEY_EXCHANGES`: **curve25519-sha256, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-group14-sha256, diffie-hellman-group14-sha1**: 对于内置 SSH 服务器,选择支持的 SSH 连接的密钥交换算法,对于系统 SSH,此设置无效。 -- `SSH_SERVER_MACS`: **hmac-sha2-256-etm@openssh.com, hmac-sha2-256, hmac-sha1**: 对于内置 SSH 服务器,选择支持的 SSH 连接的 MAC 算法,对于系统 SSH,此设置无效。 -- `SSH_SERVER_HOST_KEYS`: **ssh/gitea.rsa, ssh/gogs.rsa**: 对于内置 SSH 服务器,选择要提供为主机密钥的密钥对。私钥应在 `SSH_SERVER_HOST_KEY` 中,公钥在 `SSH_SERVER_HOST_KEY.pub` 中。相对路径会相对于 `APP_DATA_PATH` 转为绝对路径。如果不存在密钥,将为您创建一个 4096 位的 RSA 密钥。 -- `SSH_KEY_TEST_PATH`: **/tmp**: 在使用 `ssh-keygen` 测试公共 SSH 密钥时要在其中创建临时文件的目录,默认为系统临时目录。 -- `SSH_KEYGEN_PATH`: **_empty_**: 使用 `ssh-keygen` 解析公共 SSH 密钥。该值将传递给 shell。默认情况下,Gitea 会自行进行解析。 -- `SSH_EXPOSE_ANONYMOUS`: **false**: 启用将 SSH 克隆 URL 暴露给匿名访问者,默认为 false。 -- `SSH_PER_WRITE_TIMEOUT`: **30s**: 对 SSH 连接的任何写入设置超时。(将其设置为 -1 可以禁用所有超时。) +- `SSH_SERVER_CIPHERS`: **chacha20-poly1305@openssh.com, aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, aes256-gcm@openssh.com**: 對於内置的 SSH 服务器,選择支持的 SSH 连接的加密方法,對於系统 SSH,此设置無效。 +- `SSH_SERVER_KEY_EXCHANGES`: **curve25519-sha256, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-group14-sha256, diffie-hellman-group14-sha1**: 對於内置 SSH 服务器,選择支持的 SSH 连接的密钥交换算法,對於系统 SSH,此设置無效。 +- `SSH_SERVER_MACS`: **hmac-sha2-256-etm@openssh.com, hmac-sha2-256, hmac-sha1**: 對於内置 SSH 服务器,選择支持的 SSH 连接的 MAC 算法,對於系统 SSH,此设置無效。 +- `SSH_SERVER_HOST_KEYS`: **ssh/gitea.rsa, ssh/gogs.rsa**: 對於内置 SSH 服务器,選择要提供為主机密钥的密钥对。私钥應在 `SSH_SERVER_HOST_KEY` 中,公钥在 `SSH_SERVER_HOST_KEY.pub` 中。相对路径会相對於 `APP_DATA_PATH` 转為绝对路径。如果不存在密钥,将為您建立一个 4096 位的 RSA 密钥。 +- `SSH_KEY_TEST_PATH`: **/tmp**: 在使用 `ssh-keygen` 测试公共 SSH 密钥时要在其中建立临时文件的目錄,默认為系统临时目錄。 +- `SSH_KEYGEN_PATH`: **_empty_**: 使用 `ssh-keygen` 解析公共 SSH 密钥。該值将传递给 shell。默认情况下,Gitea 会自行進行解析。 +- `SSH_EXPOSE_ANONYMOUS`: **false**: 启用将 SSH 克隆 URL 暴露给匿名访问者,默认為 false。 +- `SSH_PER_WRITE_TIMEOUT`: **30s**: 对 SSH 连接的任何写入设置超时。(将其设置為 -1 可以禁用所有超时。) - `SSH_PER_WRITE_PER_KB_TIMEOUT`: **10s**: 对写入 SSH 连接的每 KB 设置超时。 -- `MINIMUM_KEY_SIZE_CHECK`: **true**: 指示是否检查最小密钥大小与相应类型。 +- `MINIMUM_KEY_SIZE_CHECK`: **true**: 指示是否检查最小密钥大小与相應類型。 - `OFFLINE_MODE`: **true**: 禁用 CDN 用于静态文件和 Gravatar 用于个人资料图片。 -- `CERT_FILE`: **https/cert.pem**: 用于 HTTPS 的证书文件路径。在链接时,服务器证书必须首先出现,然后是中间 CA 证书(如果有)。如果 `ENABLE_ACME=true`,则此设置会被忽略。路径相对于 `CUSTOM_PATH`。 -- `KEY_FILE`: **https/key.pem**: 用于 HTTPS 的密钥文件路径。如果 `ENABLE_ACME=true`,则此设置会被忽略。路径相对于 `CUSTOM_PATH`。 +- `CERT_FILE`: **https/cert.pem**: 用于 HTTPS 的证书文件路径。在链接时,服务器证书必須首先出現,然后是中间 CA 证书(如果有)。如果 `ENABLE_ACME=true`,则此设置会被忽略。路径相對於 `CUSTOM_PATH`。 +- `KEY_FILE`: **https/key.pem**: 用于 HTTPS 的密钥文件路径。如果 `ENABLE_ACME=true`,则此设置会被忽略。路径相對於 `CUSTOM_PATH`。 - `STATIC_ROOT_PATH`: **_`StaticRootPath`_**: 模板和静态文件路径的上一级。 -- `APP_DATA_PATH`: **data**(在 Docker 上为 **/data/gitea**):应用程序数据的默认路径。相对路径会相对于 _`AppWorkPath`_ 转为绝对路径。 -- `STATIC_CACHE_TIME`: **6h**: 对 `custom/`、`public/` 和所有上传的头像的静态资源的 Web 浏览器缓存时间。请注意,在 `RUN_MODE` 为 "dev" 时,此缓存会被禁用。 -- `ENABLE_GZIP`: **false**: 为运行时生成的内容启用 gzip 压缩,静态资源除外。 -- `ENABLE_PPROF`: **false**: 应用程序分析(内存和 CPU)。对于 "web" 命令,它会在 `localhost:6060` 上监听。对于 "serv" 命令,它会将数据转储到磁盘上的 `PPROF_DATA_PATH` 中,文件名为 `(cpuprofile|memprofile)__`。 -- `PPROF_DATA_PATH`: **_`AppWorkPath`_/data/tmp/pprof**: `PPROF_DATA_PATH`,当您将 Gitea 作为服务启动时,请使用绝对路径。 -- `LANDING_PAGE`: **home**: 未经身份验证用户的登录页面 \[home, explore, organizations, login, **custom**]。其中 custom 可以是任何 URL,例如 "/org/repo" 或甚至是 `https://anotherwebsite.com`。 +- `APP_DATA_PATH`: **data**(在 Docker 上為 **/data/gitea**):應用程序数据的默认路径。相对路径会相對於 _`AppWorkPath`_ 转為绝对路径。 +- `STATIC_CACHE_TIME`: **6h**: 对 `custom/`、`public/` 和所有上传的头像的静态资源的 Web 浏览器缓存时间。請注意,在 `RUN_MODE` 為 "dev" 时,此缓存会被禁用。 +- `ENABLE_GZIP`: **false**: 為运行时生成的内容启用 gzip 压缩,静态资源除外。 +- `ENABLE_PPROF`: **false**: 應用程序分析(内存和 CPU)。對於 "web" 命令,它会在 `localhost:6060` 上监听。對於 "serv" 命令,它会将数据转儲到硬碟上的 `PPROF_DATA_PATH` 中,文件名為 `(cpuprofile|memprofile)__`。 +- `PPROF_DATA_PATH`: **_`AppWorkPath`_/data/tmp/pprof**: `PPROF_DATA_PATH`,当您将 Gitea 作為服务启动时,請使用绝对路径。 +- `LANDING_PAGE`: **home**: 未经身份驗證使用者的登入页面 \[home, explore, organizations, login, **custom**]。其中 custom 可以是任何 URL,例如 "/org/repo" 或甚至是 `https://anotherwebsite.com`。 - `LFS_START_SERVER`: **false**: 启用 Git LFS 支持。 -- `LFS_CONTENT_PATH`: **`{APP_DATA_PATH}/lfs`**: 默认的 LFS 内容路径(如果它在本地存储中)。**已弃用**,请使用 `[lfs]` 中的设置。 -- `LFS_JWT_SECRET`: **_empty_**: LFS 身份验证密钥,将其更改为唯一的字符串。你可以通过 Gitea 子命令来生成此字符串。转到 [Command Line](administration/command-line.md#generate)。 -- `LFS_JWT_SECRET_URI`: **_empty_**: 代替在配置中定义 LFS_JWT_SECRET,可以使用此配置选项为 Gitea 提供包含密钥的文件的路径(示例值:`file:/etc/gitea/lfs_jwt_secret`)。 -- `LFS_HTTP_AUTH_EXPIRY`: **24h**: LFS 身份验证的有效期,以 time.Duration 表示,超过此期限的推送可能会失败。 -- `LFS_MAX_FILE_SIZE`: **0**: 允许的最大 LFS 文件大小(以字节为单位,设置为 0 为无限制)。 +- `LFS_CONTENT_PATH`: **`{APP_DATA_PATH}/lfs`**: 默认的 LFS 内容路径(如果它在本地存儲中)。**已弃用**,請使用 `[lfs]` 中的设置。 +- `LFS_JWT_SECRET`: **_empty_**: LFS 身份驗證密钥,将其更改為唯一的字符串。你可以通過 Gitea 子命令来生成此字符串。转到 [Command Line](administration/command-line.md#generate)。 +- `LFS_JWT_SECRET_URI`: **_empty_**: 代替在配置中定义 LFS_JWT_SECRET,可以使用此配置選项為 Gitea 提供包含密钥的文件的路径(示例值:`file:/etc/gitea/lfs_jwt_secret`)。 +- `LFS_HTTP_AUTH_EXPIRY`: **24h**: LFS 身份驗證的有效期,以 time.Duration 表示,超過此期限的推送可能会失败。 +- `LFS_MAX_FILE_SIZE`: **0**: 允许的最大 LFS 文件大小(以字节為單位,设置為 0 為無限制)。 - `LFS_LOCKS_PAGING_NUM`: **50**: 每页返回的最大 LFS 锁定数。 -- `REDIRECT_OTHER_PORT`: **false**: 如果为 true 并且 `PROTOCOL` 为 https,则允许将 http 请求重定向到 Gitea 监听的 https 端口的 `PORT_TO_REDIRECT`。 +- `REDIRECT_OTHER_PORT`: **false**: 如果為 true 並且 `PROTOCOL` 為 https,则允许将 http 請求重定向到 Gitea 监听的 https 端口的 `PORT_TO_REDIRECT`。 - `REDIRECTOR_USE_PROXY_PROTOCOL`: **`{USE_PROXY_PROTOCOL}`**: 在连接到 https 重定向器时,需要 PROXY 协议头。 -- `PORT_TO_REDIRECT`: **80**: http 重定向服务监听的端口。当 `REDIRECT_OTHER_PORT` 为 true 时使用。 +- `PORT_TO_REDIRECT`: **80**: http 重定向服务监听的端口。当 `REDIRECT_OTHER_PORT` 為 true 时使用。 - `SSL_MIN_VERSION`: **TLSv1.2**: 设置最低支持的 SSL 版本。 - `SSL_MAX_VERSION`: **_empty_**: 设置最大支持的 SSL 版本。 -- `SSL_CURVE_PREFERENCES`: **X25519,P256**: 设置首选的曲线。 -- `SSL_CIPHER_SUITES`: **ecdhe_ecdsa_with_aes_256_gcm_sha384,ecdhe_rsa_with_aes_256_gcm_sha384,ecdhe_ecdsa_with_aes_128_gcm_sha256,ecdhe_rsa_with_aes_128_gcm_sha256,ecdhe_ecdsa_with_chacha20_poly1305,ecdhe_rsa_with_chacha20_poly1305**: 设置首选的密码套件。 +- `SSL_CURVE_PREFERENCES`: **X25519,P256**: 设置首選的曲线。 +- `SSL_CIPHER_SUITES`: **ecdhe_ecdsa_with_aes_256_gcm_sha384,ecdhe_rsa_with_aes_256_gcm_sha384,ecdhe_ecdsa_with_aes_128_gcm_sha256,ecdhe_rsa_with_aes_128_gcm_sha256,ecdhe_ecdsa_with_chacha20_poly1305,ecdhe_rsa_with_chacha20_poly1305**: 设置首選的密碼套件。 - 如果没有对 AES 套件的硬件支持,默认情况下,ChaCha 套件将优先于 AES 套件。 - 根据 Go 1.18 的支持的套件有: - TLS 1.0 - 1.2 套件 @@ -405,84 +405,84 @@ aliases: - 别名 - "ecdhe_rsa_with_chacha20_poly1305" 是 "ecdhe_rsa_with_chacha20_poly1305_sha256" 的别名 - "ecdhe_ecdsa_with_chacha20_poly1305" 是 "ecdhe_ecdsa_with_chacha20_poly1305_sha256" 的别名 -- `ENABLE_ACME`: **false**: 通过 ACME 能力的证书颁发机构(CA)服务器(默认为 Let's Encrypt)启用自动证书管理的标志。如果启用,将忽略 `CERT_FILE` 和 `KEY_FILE`,并且 CA 必须将 `DOMAIN` 解析为此 Gitea 服务器。确保设置了 DNS 记录,并且端口 `80` 或端口 `443` 可以被 CA 服务器访问(默认情况下是公共互联网),并重定向到相应的端口 `PORT_TO_REDIRECT` 或 `HTTP_PORT`。 -- `ACME_URL`: **_empty_**: CA 的 ACME 目录 URL,例如自托管的 [smallstep CA 服务器](https://github.com/smallstep/certificates),它可以是 `https://ca.example.com/acme/acme/directory`。如果留空,默认使用 Let's Encrypt 的生产 CA(还要检查 `LETSENCRYPT_ACCEPTTOS`)。 -- `ACME_ACCEPTTOS`: **false**: 这是一个明确的检查,您是否接受 ACME 提供者的服务条款。默认为 Let's Encrypt 的 [服务条款](https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf)。 -- `ACME_DIRECTORY`: **https**: 证书管理器用于缓存证书和私钥等信息的目录。 +- `ENABLE_ACME`: **false**: 通過 ACME 能力的证书颁发机构(CA)服务器(默认為 Let's Encrypt)启用自动证书管理的标志。如果启用,将忽略 `CERT_FILE` 和 `KEY_FILE`,並且 CA 必須将 `DOMAIN` 解析為此 Gitea 服务器。确保设置了 DNS 记录,並且端口 `80` 或端口 `443` 可以被 CA 服务器访问(默认情况下是公共互联网),並重定向到相應的端口 `PORT_TO_REDIRECT` 或 `HTTP_PORT`。 +- `ACME_URL`: **_empty_**: CA 的 ACME 目錄 URL,例如自托管的 [smallstep CA 服务器](https://github.com/smallstep/certificates),它可以是 `https://ca.example.com/acme/acme/directory`。如果留空,默认使用 Let's Encrypt 的生产 CA(還要检查 `LETSENCRYPT_ACCEPTTOS`)。 +- `ACME_ACCEPTTOS`: **false**: 这是一个明确的检查,您是否接受 ACME 提供者的服务条款。默认為 Let's Encrypt 的 [服务条款](https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf)。 +- `ACME_DIRECTORY`: **https**: 证书管理器用于缓存证书和私钥等信息的目錄。 - `ACME_EMAIL`: **_empty_**: 用于 ACME 注册的电子邮件。通常用于通知有关已颁发的证书的问题。 - `ACME_CA_ROOT`: **_empty_**: CA 的根证书。如果留空,默认使用系统的信任链。 -- `ALLOW_GRACEFUL_RESTARTS`: **true**: 在 SIGHUP 时执行优雅重启。 -- `GRACEFUL_HAMMER_TIME`: **60s**: 在重新启动后,父进程将停止接受新连接,并允许请求在停止之前完成。如果耗时超过此时间,则会强制关闭关闭。 -- `STARTUP_TIMEOUT`: **0**: 如果启动超过提供的时间,将关闭服务器。在 Windows 上设置这将向 SVC 主机发送一个等待提示,告诉 SVC 主机启动可能需要一些时间。请注意,启动由监听器(HTTP/HTTPS/SSH)的打开来确定。索引程序可能需要更长时间启动,可能具有自己的超时时间。 +- `ALLOW_GRACEFUL_RESTARTS`: **true**: 在 SIGHUP 时執行优雅重启。 +- `GRACEFUL_HAMMER_TIME`: **60s**: 在重新启动后,父進程将停止接受新连接,並允许請求在停止之前完成。如果耗时超過此时间,则会强制关闭关闭。 +- `STARTUP_TIMEOUT`: **0**: 如果启动超過提供的时间,将关闭服务器。在 Windows 上设置这将向 SVC 主机发送一个等待提示,告诉 SVC 主机启动可能需要一些时间。請注意,启动由监听器(HTTP/HTTPS/SSH)的打开来确定。索引程序可能需要更长时间启动,可能具有自己的超时时间。 ## 数据库 (`database`) -- `DB_TYPE`: **mysql**: 数据库类型 \[mysql, postgres, mssql, sqlite3\]。 +- `DB_TYPE`: **mysql**: 数据库類型 \[mysql, postgres, mssql, sqlite3\]。 - `HOST`: **127.0.0.1:3306**: 数据库主机地址和端口或 unix 套接字的绝对路径 \[mysql, postgres\](例如:/var/run/mysqld/mysqld.sock)。 -- `NAME`: **gitea**: 数据库名称。 -- `USER`: **root**: 数据库用户名。 -- `PASSWD`: **_empty_**: 数据库密码。如果密码包含特殊字符,请使用 \`your password\` 或 """your password"""。 -- `SCHEMA`: **_empty_**: 对于 PostgreSQL,如果与 "public" 不同的模式。模式必须事先存在,用户必须对其具有创建特权,并且用户搜索路径必须设置为首先查找模式(例如 `ALTER USER user SET SEARCH_PATH = schema_name,"$user",public;`)。 -- `SSL_MODE`: **disable**: MySQL 或 PostgreSQL 数据库是否启用 SSL 模式,仅适用于 MySQL 和 PostgreSQL。 +- `NAME`: **gitea**: 数据库名稱。 +- `USER`: **root**: 数据库使用者名。 +- `PASSWD`: **_empty_**: 数据库密碼。如果密碼包含特殊字符,請使用 \`your password\` 或 """your password"""。 +- `SCHEMA`: **_empty_**: 對於 PostgreSQL,如果与 "public" 不同的模式。模式必須事先存在,使用者必須对其具有建立特权,並且使用者搜索路径必須设置為首先查找模式(例如 `ALTER USER user SET SEARCH_PATH = schema_name,"$user",public;`)。 +- `SSL_MODE`: **disable**: MySQL 或 PostgreSQL 数据库是否启用 SSL 模式,僅适用于 MySQL 和 PostgreSQL。 - MySQL 的有效值: - - `true`:启用 TLS,并针对数据库服务器证书根证书进行验证。选择此选项时,请确保用于验证数据库服务器证书的根证书(例如 CA 证书)位于数据库服务器和 Gitea 服务器的系统证书存储中。有关如何将 CA 证书添加到证书存储的说明,请参阅系统文档。 + - `true`:启用 TLS,並针对数据库服务器证书根证书進行驗證。選择此選项时,請确保用于驗證数据库服务器证书的根证书(例如 CA 证书)位于数据库服务器和 Gitea 服务器的系统证书存儲中。有关如何将 CA 证书添加到证书存儲的说明,請参阅系统文檔。 - `false`:禁用 TLS。 - `disable`:`false` 的别名,与 PostgreSQL 兼容。 - - `skip-verify`:启用 TLS,但不进行数据库服务器证书验证。如果数据库服务器上有自签名或无效证书,请使用此选项。 - - `prefer`:启用 TLS,并回退到非 TLS 连接。 + - `skip-verify`:启用 TLS,但不進行数据库服务器证书驗證。如果数据库服务器上有自签名或無效证书,請使用此選项。 + - `prefer`:启用 TLS,並回退到非 TLS 连接。 - PostgreSQL 的有效值: - `disable`:禁用 TLS。 - - `require`:启用 TLS,但不进行任何验证。 - - `verify-ca`:启用 TLS,并对数据库服务器证书进行根证书验证。 - - `verify-full`:启用 TLS,并验证数据库服务器名称是否与给定的证书的 "Common Name" 或 "Subject Alternative Name" 字段匹配。 -- `SQLITE_TIMEOUT`:**500**: 仅适用于 SQLite3 的查询超时。 -- `SQLITE_JOURNAL_MODE`:**""**: 更改 SQlite3 的日志模式。可以用于在高负载导致写入拥塞时启用 [WAL 模式](https://www.sqlite.org/wal.html)。有关可能的值,请参阅 [SQlite3 文档](https://www.sqlite.org/pragma.html#pragma_journal_mode)。默认为数据库文件的默认值,通常为 DELETE。 + - `require`:启用 TLS,但不進行任何驗證。 + - `verify-ca`:启用 TLS,並对数据库服务器证书進行根证书驗證。 + - `verify-full`:启用 TLS,並驗證数据库服务器名稱是否与给定的证书的 "Common Name" 或 "Subject Alternative Name" 字段匹配。 +- `SQLITE_TIMEOUT`:**500**: 僅适用于 SQLite3 的查询超时。 +- `SQLITE_JOURNAL_MODE`:**""**: 更改 SQlite3 的日志模式。可以用于在高负载导致写入拥塞时启用 [WAL 模式](https://www.sqlite.org/wal.html)。有关可能的值,請参阅 [SQlite3 文檔](https://www.sqlite.org/pragma.html#pragma_journal_mode)。默认為数据库文件的默认值,通常為 DELETE。 - `ITERATE_BUFFER_SIZE`:**50**: 用于迭代的内部缓冲区大小。 -- `PATH`:**data/gitea.db**: 仅适用于 SQLite3 的数据库文件路径。 -- `LOG_SQL`:**false**: 记录已执行的 SQL。 +- `PATH`:**data/gitea.db**: 僅适用于 SQLite3 的数据库文件路径。 +- `LOG_SQL`:**false**: 记录已執行的 SQL。 - `DB_RETRIES`:**10**: 允许多少次 ORM 初始化 / DB 连接尝试。 - `DB_RETRY_BACKOFF`:**3s**: 如果发生故障,等待另一个 ORM 初始化 / DB 连接尝试的 time.Duration。 -- `MAX_OPEN_CONNS`:**0**: 数据库最大打开连接数 - 默认为 0,表示没有限制。 -- `MAX_IDLE_CONNS`:**2**: 连接池上的最大空闲数据库连接数,默认为 2 - 这将限制为 `MAX_OPEN_CONNS`。 -- `CONN_MAX_LIFETIME`:**0 或 3s**: 设置 DB 连接可以重用的最长时间 - 默认为 0,表示没有限制(除了 MySQL,其中为 3s - 请参见 #6804 和 #7071)。 -- `AUTO_MIGRATION`:**true**: 是否自动执行数据库模型迁移。 +- `MAX_OPEN_CONNS`:**0**: 数据库最大打开连接数 - 默认為 0,表示没有限制。 +- `MAX_IDLE_CONNS`:**2**: 连接池上的最大空闲数据库连接数,默认為 2 - 这将限制為 `MAX_OPEN_CONNS`。 +- `CONN_MAX_LIFETIME`:**0 或 3s**: 设置 DB 连接可以重用的最长时间 - 默认為 0,表示没有限制(除了 MySQL,其中為 3s - 請参见 #6804 和 #7071)。 +- `AUTO_MIGRATION`:**true**: 是否自动執行数据库模型迁移。 -请参见 #8540 和 #8273 以获取有关 `MAX_OPEN_CONNS`、`MAX_IDLE_CONNS` 和 `CONN_MAX_LIFETIME` 的适当值及其与端口耗尽的关系的进一步讨论。 +請参见 #8540 和 #8273 以获取有关 `MAX_OPEN_CONNS`、`MAX_IDLE_CONNS` 和 `CONN_MAX_LIFETIME` 的适当值及其与端口耗尽的关系的進一步讨论。 ## 索引 (`indexer`) -- `ISSUE_INDEXER_TYPE`: **bleve**: 工单索引类型,当前支持:`bleve`、`db`、`elasticsearch` 或 `meilisearch`。 -- `ISSUE_INDEXER_CONN_STR`:\*\*\*\* : 工单索引连接字符串,仅适用于 elasticsearch 和 meilisearch(例如:`http://elastic:password@localhost:9200`)或者(例如:`http://:apikey@localhost:7700`)。 -- `ISSUE_INDEXER_NAME`:**gitea_issues**: 工单索引器名称,在 ISSUE_INDEXER_TYPE 为 elasticsearch 或 meilisearch 时可用。 -- `ISSUE_INDEXER_PATH`:**indexers/issues.bleve**: 用于工单搜索的索引文件;在 ISSUE*INDEXER_TYPE 为 bleve 和 elasticsearch 时可用。相对路径将相对于 *`AppWorkPath`\_ 进行绝对路径化。 +- `ISSUE_INDEXER_TYPE`: **bleve**: 工單索引類型,当前支持:`bleve`、`db`、`elasticsearch` 或 `meilisearch`。 +- `ISSUE_INDEXER_CONN_STR`:\*\*\*\* : 工單索引连接字符串,僅适用于 elasticsearch 和 meilisearch(例如:`http://elastic:password@localhost:9200`)或者(例如:`http://:apikey@localhost:7700`)。 +- `ISSUE_INDEXER_NAME`:**gitea_issues**: 工單索引器名稱,在 ISSUE_INDEXER_TYPE 為 elasticsearch 或 meilisearch 时可用。 +- `ISSUE_INDEXER_PATH`:**indexers/issues.bleve**: 用于工單搜索的索引文件;在 ISSUE*INDEXER_TYPE 為 bleve 和 elasticsearch 时可用。相对路径将相對於 *`AppWorkPath`\_ 進行绝对路径化。 -- `REPO_INDEXER_ENABLED`:**false**: 启用代码搜索(占用大量磁盘空间,约为存储库大小的 6 倍)。 -- `REPO_INDEXER_REPO_TYPES`:**sources,forks,mirrors,templates**: 存储库索引器单元。要索引的项目可以是 `sources`、`forks`、`mirrors`、`templates` 或它们的任何组合,用逗号分隔。如果为空,则默认为仅 `sources`,如果要完全禁用,请参见 `REPO_INDEXER_ENABLED`。 -- `REPO_INDEXER_TYPE`:**bleve**: 代码搜索引擎类型,可以为 `bleve` 或者 `elasticsearch`。 +- `REPO_INDEXER_ENABLED`:**false**: 启用代码搜索(占用大量硬碟空间,约為存儲库大小的 6 倍)。 +- `REPO_INDEXER_REPO_TYPES`:**sources,forks,mirrors,templates**: 存儲库索引器單元。要索引的项目可以是 `sources`、`forks`、`mirrors`、`templates` 或它们的任何组合,用逗号分隔。如果為空,则默认為僅 `sources`,如果要完全禁用,請参见 `REPO_INDEXER_ENABLED`。 +- `REPO_INDEXER_TYPE`:**bleve**: 代码搜索引擎類型,可以為 `bleve` 或者 `elasticsearch`。 - `REPO_INDEXER_PATH`:**indexers/repos.bleve**: 用于代码搜索的索引文件。 -- `REPO_INDEXER_CONN_STR`:\*\*\*\*: 代码索引器连接字符串,在 `REPO_INDEXER_TYPE` 为 elasticsearch 时可用。例如:`http://elastic:password@localhost:9200` -- `REPO_INDEXER_NAME`:**gitea_codes**: 代码索引器名称,在 `REPO_INDEXER_TYPE` 为 elasticsearch 时可用。 +- `REPO_INDEXER_CONN_STR`:\*\*\*\*: 代码索引器连接字符串,在 `REPO_INDEXER_TYPE` 為 elasticsearch 时可用。例如:`http://elastic:password@localhost:9200` +- `REPO_INDEXER_NAME`:**gitea_codes**: 代码索引器名稱,在 `REPO_INDEXER_TYPE` 為 elasticsearch 时可用。 - `REPO_INDEXER_INCLUDE`:**empty**: 逗号分隔的 glob 模式列表(参见 [https://github.com/gobwas/glob](https://github.com/gobwas/glob))以用于**包括**在索引中。使用 `**.txt` 匹配任何具有 .txt 扩展名的文件。空列表表示包括所有文件。 - `REPO_INDEXER_EXCLUDE`:**empty**: 逗号分隔的 glob 模式列表(参见 [https://github.com/gobwas/glob](https://github.com/gobwas/glob))以用于**排除**在索引中。即使在 `REPO_INDEXER_INCLUDE` 中匹配,也不会索引与此列表匹配的文件。 - `REPO_INDEXER_EXCLUDE_VENDORED`:**true**: 从索引中排除 vendored 文件。 - `MAX_FILE_SIZE`:**1048576**: 要索引的文件的最大字节数。 -- `STARTUP_TIMEOUT`:**30s**: 如果索引器启动时间超过此超时时间 - 则失败。(此超时时间将添加到上面的锤子时间中,用于子进程 - 因为 bleve 不会在上一个父进程关闭之前启动)。设置为 -1 表示永不超时。 +- `STARTUP_TIMEOUT`:**30s**: 如果索引器启动时间超過此超时时间 - 则失败。(此超时时间将添加到上面的锤子时间中,用于子進程 - 因為 bleve 不会在上一个父進程关闭之前启动)。设置為 -1 表示永不超时。 ## 队列 (`queue` and `queue.*`) -[queue] 配置在 `[queue.*]` 下为各个队列设置默认值,并允许为各个队列设置单独的配置覆盖。(不过请参见下文。) +[queue] 配置在 `[queue.*]` 下為各个队列设置默认值,並允许為各个队列设置單独的配置覆盖。(不過請参见下文。) -- `TYPE`:**level**: 通用队列类型,当前支持:`level`(在内部使用 LevelDB)、`channel`、`redis`、`dummy`。无效的类型将视为 `level`。 -- `DATADIR`:**queues/common**: 用于存储 level 队列的基本 DataDir。单独的队列的 `DATADIR` 可以在 `queue.name` 部分进行设置。相对路径将根据 `{APP_DATA_PATH}` 变为绝对路径。 +- `TYPE`:**level**: 通用队列類型,当前支持:`level`(在内部使用 LevelDB)、`channel`、`redis`、`dummy`。無效的類型将视為 `level`。 +- `DATADIR`:**queues/common**: 用于存儲 level 队列的基本 DataDir。單独的队列的 `DATADIR` 可以在 `queue.name` 部分進行设置。相对路径将根据 `{APP_DATA_PATH}` 变為绝对路径。 - `LENGTH`:**100000**: 通道队列阻塞之前的最大队列大小 - `BATCH_LENGTH`:**20**: 在传递给处理程序之前批处理数据 -- `CONN_STR`:**redis://127.0.0.1:6379/0**: redis 队列类型的连接字符串。对于 `redis-cluster`,使用 `redis+cluster://127.0.0.1:6379/0`。可以使用查询参数来设置选项。类似地,LevelDB 选项也可以使用:**leveldb://relative/path?option=value** 或 **leveldb:///absolute/path?option=value** 进行设置,并将覆盖 `DATADIR`。 -- `QUEUE_NAME`:**\_queue**: 默认的 redis 和磁盘队列名称的后缀。单独的队列将默认为 **`name`**`QUEUE_NAME`,但可以在特定的 `queue.name` 部分中进行覆盖。 -- `SET_NAME`:**\_unique**: 将添加到默认的 redis 和磁盘队列 `set` 名称中以用于唯一队列的后缀。单独的队列将默认为 **`name`**`QUEUE_NAME`_`SET_NAME`_,但可以在特定的 `queue.name` 部分中进行覆盖。 -- `MAX_WORKERS`:**(dynamic)**: 队列的最大工作协程数。默认值为 "CpuNum/2",限制在 1 到 10 之间。 +- `CONN_STR`:**redis://127.0.0.1:6379/0**: redis 队列類型的连接字符串。對於 `redis-cluster`,使用 `redis+cluster://127.0.0.1:6379/0`。可以使用查询參數来设置選项。类似地,LevelDB 選项也可以使用:**leveldb://relative/path?option=value** 或 **leveldb:///absolute/path?option=value** 進行设置,並将覆盖 `DATADIR`。 +- `QUEUE_NAME`:**\_queue**: 默认的 redis 和硬碟队列名稱的后缀。單独的队列将默认為 **`name`**`QUEUE_NAME`,但可以在特定的 `queue.name` 部分中進行覆盖。 +- `SET_NAME`:**\_unique**: 将添加到默认的 redis 和硬碟队列 `set` 名稱中以用于唯一队列的后缀。單独的队列将默认為 **`name`**`QUEUE_NAME`_`SET_NAME`_,但可以在特定的 `queue.name` 部分中進行覆盖。 +- `MAX_WORKERS`:**(dynamic)**: 队列的最大工作协程数。默认值為 "CpuNum/2",限制在 1 到 10 之间。 -Gitea 创建以下非唯一队列: +Gitea 建立以下非唯一队列: - `code_indexer` - `issue_indexer` @@ -500,45 +500,45 @@ Gitea 创建以下非唯一队列: ## Admin (`admin`) -- `DEFAULT_EMAIL_NOTIFICATIONS`: **enabled**: 用户电子邮件通知的默认配置(用户可配置)。选项:enabled、onmention、disabled -- `DISABLE_REGULAR_ORG_CREATION`: **false**: 禁止普通(非管理员)用户创建组织。 -- `USER_DISABLED_FEATURES`:**_empty_** 禁用的用户特性,当前允许为空或者 `deletion`,`manage_ssh_keys`, `manage_gpg_keys` 未来可以增加更多设置。 - - `deletion`: 用户不能通过界面或者 API 删除他自己。 - - `manage_ssh_keys`: 用户不能通过界面或者 API 配置 SSH Keys。 - - `manage_gpg_keys`: 用户不能配置 GPG 密钥。 +- `DEFAULT_EMAIL_NOTIFICATIONS`: **enabled**: 使用者电子邮件通知的默认配置(使用者可配置)。選项:enabled、onmention、disabled +- `DISABLE_REGULAR_ORG_CREATION`: **false**: 禁止普通(非管理员)使用者建立組織。 +- `USER_DISABLED_FEATURES`:**_empty_** 禁用的使用者特性,当前允许為空或者 `deletion`,`manage_ssh_keys`, `manage_gpg_keys` 未来可以增加更多设置。 + - `deletion`: 使用者不能通過界面或者 API 删除他自己。 + - `manage_ssh_keys`: 使用者不能通過界面或者 API 配置 SSH Keys。 + - `manage_gpg_keys`: 使用者不能配置 GPG 密钥。 ## 安全性 (`security`) -- `INSTALL_LOCK`: **false**: 控制是否能够访问安装向导页面,设置为 `true` 则禁止访问安装向导页面。 -- `SECRET_KEY`: **\<每次安装时随机生成\>**: 全局服务器安全密钥。这个密钥非常重要,如果丢失将无法解密加密的数据(例如 2FA)。 -- `SECRET_KEY_URI`: **_empty_**: 与定义 `SECRET_KEY` 不同,此选项可用于使用存储在文件中的密钥(示例值:`file:/etc/gitea/secret_key`)。它不应该像 `SECRET_KEY` 一样容易丢失。 -- `LOGIN_REMEMBER_DAYS`: **31**: 在要求重新登录之前,记住用户的登录状态多长时间(以天为单位)。 -- `COOKIE_REMEMBER_NAME`: **gitea_incredible**: 保存自动登录信息的 Cookie 名称。 -- `REVERSE_PROXY_AUTHENTICATION_USER`: **X-WEBAUTH-USER**: 反向代理认证的 HTTP 头部名称,用于提供用户信息。 -- `REVERSE_PROXY_AUTHENTICATION_EMAIL`: **X-WEBAUTH-EMAIL**: 反向代理认证的 HTTP 头部名称,用于提供邮箱信息。 -- `REVERSE_PROXY_AUTHENTICATION_FULL_NAME`: **X-WEBAUTH-FULLNAME**: 反向代理认证的 HTTP 头部名称,用于提供全名信息。 -- `REVERSE_PROXY_LIMIT`: **1**: 解释 X-Forwarded-For 标头或 X-Real-IP 标头,并将其设置为请求的远程 IP。 - 可信代理计数。设置为零以不使用这些标头。 +- `INSTALL_LOCK`: **false**: 控制是否能够访问安裝向导页面,设置為 `true` 则禁止访问安裝向导页面。 +- `SECRET_KEY`: **\<每次安裝时随机生成\>**: 全局服务器安全密钥。这个密钥非常重要,如果丢失将無法解密加密的数据(例如 2FA)。 +- `SECRET_KEY_URI`: **_empty_**: 与定义 `SECRET_KEY` 不同,此選项可用于使用存儲在文件中的密钥(示例值:`file:/etc/gitea/secret_key`)。它不應該像 `SECRET_KEY` 一样容易丢失。 +- `LOGIN_REMEMBER_DAYS`: **31**: 在要求重新登入之前,记住使用者的登入状态多长时间(以天為單位)。 +- `COOKIE_REMEMBER_NAME`: **gitea_incredible**: 保存自动登入信息的 Cookie 名稱。 +- `REVERSE_PROXY_AUTHENTICATION_USER`: **X-WEBAUTH-USER**: 反向代理認證的 HTTP 头部名稱,用于提供使用者信息。 +- `REVERSE_PROXY_AUTHENTICATION_EMAIL`: **X-WEBAUTH-EMAIL**: 反向代理認證的 HTTP 头部名稱,用于提供邮箱信息。 +- `REVERSE_PROXY_AUTHENTICATION_FULL_NAME`: **X-WEBAUTH-FULLNAME**: 反向代理認證的 HTTP 头部名稱,用于提供全名信息。 +- `REVERSE_PROXY_LIMIT`: **1**: 解释 X-Forwarded-For 标头或 X-Real-IP 标头,並将其设置為請求的远程 IP。 + 可信代理计数。设置為零以不使用这些标头。 - `REVERSE_PROXY_TRUSTED_PROXIES`: **127.0.0.0/8,::1/128**: 逗号分隔的受信任代理服务器的 IP 地址和网络列表。使用 `*` 来信任全部。 -- `DISABLE_GIT_HOOKS`: **true**: 设置为 `false` 以允许具有 Git 钩子权限的用户创建自定义 Git 钩子。 - 警告:自定义 Git 钩子可用于在主机操作系统上执行任意代码。这允许用户访问和修改此配置文件和 Gitea 数据库,并中断 Gitea 服务。 - 通过修改 Gitea 数据库,用户可以获得 Gitea 管理员权限。 - 它还使他们可以访问正在运行 Gitea 实例的操作系统上用户可用的其他资源,并以 Gitea 操作系统用户的名义执行任意操作。 +- `DISABLE_GIT_HOOKS`: **true**: 设置為 `false` 以允许具有 Git 钩子权限的使用者建立自定义 Git 钩子。 + 警告:自定义 Git 钩子可用于在主机操作系统上執行任意代码。这允许使用者访问和修改此配置文件和 Gitea 数据库,並中断 Gitea 服务。 + 通過修改 Gitea 数据库,使用者可以获得 Gitea 管理员权限。 + 它還使他们可以访问正在运行 Gitea 实例的操作系统上使用者可用的其他资源,並以 Gitea 操作系统使用者的名义執行任意操作。 这可能对您的网站或操作系统造成危害。 - 在必要之前,请在更改现有 git 存储库中的钩子之前进行调整。 -- `DISABLE_WEBHOOKS`: **false**: 设置为 `true` 以禁用 Webhooks 功能。 -- `ONLY_ALLOW_PUSH_IF_GITEA_ENVIRONMENT_SET`: **true**: 设置为 `false` 以允许本地用户在未设置 Gitea 环境的情况下推送到 Gitea 存储库。不建议这样做,如果您希望本地用户推送到 Gitea 存储库,应该适当地设置环境。 -- `IMPORT_LOCAL_PATHS`: **false**: 设置为 `false` 以防止所有用户(包括管理员)从服务器上导入本地路径。 -- `INTERNAL_TOKEN`: **\<每次安装时随机生成,如果未设置 URI\>**: 用于验证 Gitea 二进制文件内部通信的密钥。 -- `INTERNAL_TOKEN_URI`: **_empty_**: 与在配置中定义 `INTERNAL_TOKEN` 不同,此配置选项可用于将包含内部令牌的文件的路径提供给 Gitea(示例值:`file:/etc/gitea/internal_token`)。 + 在必要之前,請在更改現有 git 存儲库中的钩子之前進行调整。 +- `DISABLE_WEBHOOKS`: **false**: 设置為 `true` 以禁用 Webhooks 功能。 +- `ONLY_ALLOW_PUSH_IF_GITEA_ENVIRONMENT_SET`: **true**: 设置為 `false` 以允许本地使用者在未设置 Gitea 环境的情况下推送到 Gitea 存儲库。不建议这样做,如果您希望本地使用者推送到 Gitea 存儲库,應該适当地设置环境。 +- `IMPORT_LOCAL_PATHS`: **false**: 设置為 `false` 以防止所有使用者(包括管理员)从服务器上导入本地路径。 +- `INTERNAL_TOKEN`: **\<每次安裝时随机生成,如果未设置 URI\>**: 用于驗證 Gitea 二進制文件内部通信的密钥。 +- `INTERNAL_TOKEN_URI`: **_empty_**: 与在配置中定义 `INTERNAL_TOKEN` 不同,此配置選项可用于将包含内部令牌的文件的路径提供给 Gitea(示例值:`file:/etc/gitea/internal_token`)。 - `PASSWORD_HASH_ALGO`: **pbkdf2**: 要使用的哈希算法 \[argon2、pbkdf2、pbkdf2_v1、pbkdf2_hi、scrypt、bcrypt\],argon2 和 scrypt 将消耗大量内存。 - - 注意:`pbkdf2` 哈希的默认参数已更改 - 先前的设置可作为 `pbkdf2_v1` 使用,但不建议使用。 - - 可以通过在算法后使用 `$` 进行调整: + - 注意:`pbkdf2` 哈希的默认參數已更改 - 先前的设置可作為 `pbkdf2_v1` 使用,但不建议使用。 + - 可以通過在算法后使用 `$` 進行调整: - `argon2$