code.gitea.io/gitea@v1.22.3/docs/content/usage/packages/swift.zh-cn.md (about)

     1  ---
     2  date: "2023-01-10T00:00:00+00:00"
     3  title: "Swift 软件包注册表"
     4  slug: "swift"
     5  sidebar_position: 95
     6  draft: false
     7  toc: false
     8  menu:
     9    sidebar:
    10      parent: "packages"
    11      name: "Swift"
    12      sidebar_position: 95
    13      identifier: "swift"
    14  ---
    15  
    16  # Swift 软件包注册表
    17  
    18  为您的用户或组织发布 [Swift](https://www.swift.org/) 软件包。
    19  
    20  ## 要求
    21  
    22  要使用 Swift 软件包注册表,您需要使用 [swift](https://www.swift.org/getting-started/) 消费软件包,并使用 HTTP 客户端(如 `curl`)发布软件包。
    23  
    24  ## 配置软件包注册表
    25  
    26  要注册软件包注册表并提供凭据,请执行以下命令:
    27  
    28  ```shell
    29  swift package-registry set https://gitea.example.com/api/packages/{owner}/swift -login {username} -password {password}
    30  ```
    31  
    32  | 占位符     | 描述                                                                                                                                           |
    33  | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
    34  | `owner`    | 软件包的所有者。                                                                                                                               |
    35  | `username` | 您的 Gitea 用户名。                                                                                                                            |
    36  | `password` | 您的 Gitea 密码。如果您使用两步验证或 OAuth,请使用[个人访问令牌](development/api-usage.md#通过-api-认证)代替密码。 |
    37  
    38  登录是可选的,只有在软件包注册表是私有的情况下才需要。
    39  
    40  ## 发布软件包
    41  
    42  首先,您需要打包软件包的内容:
    43  
    44  ```shell
    45  swift package archive-source
    46  ```
    47  
    48  要发布软件包,请执行一个带有软件包内容的 HTTP `PUT` 请求,将内容放在请求正文中。
    49  
    50  ```shell --user your_username:your_password_or_token \
    51  curl -X PUT --user {username}:{password} \
    52  	 -H "Accept: application/vnd.swift.registry.v1+json" \
    53  	 -F source-archive=@/path/to/package.zip \
    54  	 -F metadata={metadata} \
    55  	 https://gitea.example.com/api/packages/{owner}/swift/{scope}/{name}/{version}
    56  ```
    57  
    58  | 占位符     | 描述                                                                                                                                           |
    59  | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
    60  | `username` | 您的 Gitea 用户名。                                                                                                                            |
    61  | `password` | 您的 Gitea 密码。如果您使用两步验证或 OAuth,请使用[个人访问令牌](development/api-usage.md#通过-api-认证)代替密码。 |
    62  | `owner`    | 软件包的所有者。                                                                                                                               |
    63  | `scope`    | 软件包的作用域。                                                                                                                               |
    64  | `name`     | 软件包的名称。                                                                                                                                 |
    65  | `version`  | 软件包的版本。                                                                                                                                 |
    66  | `metadata` | (可选)软件包的元数据。以 JSON 编码的子集,格式参考 https://schema.org/SoftwareSourceCode                                                     |
    67  
    68  如果已经存在相同名称和版本的软件包,则无法发布软件包。您必须首先删除现有的软件包。
    69  
    70  ## 安装软件包
    71  
    72  要从软件包注册表安装 Swift 软件包,请将其添加到 `Package.swift` 文件的依赖项列表中:
    73  
    74  ```
    75  dependencies: [
    76  	.package(id: "{scope}.{name}", from:"{version}")
    77  ]
    78  ```
    79  
    80  | 参数      | 描述           |
    81  | --------- | -------------- |
    82  | `scope`   | 软件包的作用域 |
    83  | `name`    | 软件包的名称   |
    84  | `version` | 软件包的版本   |
    85  
    86  之后,执行以下命令来安装它:
    87  
    88  ```shell
    89  swift package resolve
    90  ```