Files
gitea-docs/i18n/zh-tw/docusaurus-plugin-content-docs/version-1.26/usage/packages/composer.md
Lunny Xiao 965c269495 Update zh tw languages and fix some broken links (#455)
---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: silverwind <2021+silverwind@noreply.gitea.com>
Reviewed-on: https://gitea.com/gitea/docs/pulls/455
Reviewed-by: silverwind <2021+silverwind@noreply.gitea.com>
2026-07-09 23:41:46 +00:00

111 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
date: "2021-07-20T00:00:00+00:00"
slug: "composer"
sidebar_position: 10
---
# Composer 套件註冊表
為您的使用者或組織發佈 [Composer](https://getcomposer.org/) 套件。
## 要求
要使用 Composer 套件註冊表,您可以使用 [Composer](https://getcomposer.org/download/) 消費,並使用類似 `curl` 的 HTTP 上傳客戶端發佈套件。
## 發佈套件
要發佈 Composer 套件,請執行 HTTP `PUT` 操作,將套件內容放入請求體中。
套件內容必須是包含 `composer.json` 文件的壓縮 PHP 專案。
如果已經存在同名和版本的套件,則無法發佈新的套件。您必須先刪除現有的套件。
```
PUT https://gitea.example.com/api/packages/{owner}/composer
```
| 參數 | 描述 |
| ------- | -------------- |
| `owner` | 套件的所有者 |
如果 `composer.json` 文件不包含 `version` 屬性,您必須將其作為查詢參數提供:
```
PUT https://gitea.example.com/api/packages/{owner}/composer?version={x.y.z}
```
使用 HTTP 基本身份驗證的範例請求:
```shell
curl --user your_username:your_password_or_token \
--upload-file path/to/project.zip \
https://gitea.example.com/api/packages/testuser/composer
```
或者將套件版本指定為查詢參數:
```shell
curl --user your_username:your_password_or_token \
--upload-file path/to/project.zip \
https://gitea.example.com/api/packages/testuser/composer?version=1.0.3
```
如果您使用 2FA 或 OAuth請使用[個人存取權杖](development/api-usage.md#透過-api-認證)替代密碼。
伺服器將以以下 HTTP 狀態碼響應。
| HTTP 狀態碼 | 含義 |
| ----------------- | ----------------------------------------------------------- |
| `201 Created` | 套件已發佈 |
| `400 Bad Request` | 套件名稱和/或版本無效,或具有相同名稱和版本的套件已存在 |
## 設定套件註冊表
要註冊套件註冊表,您需要將其添加到 Composer 的 `config.json` 文件中(通常可以在 `<user-home-dir>/.composer/config.json` 中找到):
```json
{
"repositories": [{
"type": "composer",
"url": "https://gitea.example.com/api/packages/{owner}/composer"
}
]
}
```
要使用憑據訪問套件註冊表,您必須在 `auth.json` 文件中指定它們,如下所示:
```json
{
"http-basic": {
"gitea.example.com": {
"username": "{username}",
"password": "{password}"
}
}
}
```
| 參數 | 描述 |
| ---------- | --------------------------- |
| `owner` | 套件的所有者 |
| `username` | 您的 Gitea 使用者名稱 |
| `password` | 您的Gitea密碼或個人存取權杖 |
## 安裝套件
要從套件註冊表中安裝套件,請執行以下命令:
```shell
composer require {package_name}
```
您可以指定套件的版本,這是可選的:
```shell
composer require {package_name}:{package_version}
```
| 參數 | 描述 |
| ----------------- | ---------- |
| `package_name` | 套件名稱 |
| `package_version` | 套件版本 |