claude@host:path のような SSH ユーザー違いの URL が「形式が不正」で弾かれ 原因が分かりにくかった。Gitea/GitHub の SSH ユーザーは常に git。 - REPO_RE を ssh://<user>@host/… / <user>@host:path / host:path も受理するよう緩和 (// 始まりは拒否、ホスト allowlist は全形式に適用) - URL 形式エラーで受理形式と「SSH ユーザーは常に git」を明記、 ホスト不許可で許可済み一覧を併記 - UI のリポジトリ URL 入力欄にヒントを追加、README に URL 形式表を追加
31 lines
1.5 KiB
Markdown
31 lines
1.5 KiB
Markdown
# CHANGELOG 2.1.263-e — 手動リリース
|
||
|
||
## 背景
|
||
|
||
`claude@192.168.9.65:websites/e-stay-tours.git`(SSH ユーザーを自分のアカウント名にした URL)が
|
||
`リポジトリ URL の形式が不正です` で弾かれ、理由が分かりにくかった。
|
||
Gitea・GitHub の SSH ユーザーは常に `git` だが、それを案内していなかった。
|
||
|
||
## 変更
|
||
|
||
- **`REPO_RE`(manager の URL バリデーション)を緩和**
|
||
- `ssh://<user>@<host>[:port]/<path>` … `git` 以外のユーザーも受理
|
||
- `<user>@<host>:<path>` … SCP 記法。`git@` 固定をやめて任意ユーザー可
|
||
- `<host>:<path>` … ユーザー省略も受理
|
||
- `//` で始まるパスは引き続き拒否(URL 誤入力の検出)
|
||
- ホスト allowlist(`git.allowedHosts`)は従来どおり全形式に適用
|
||
- **エラーメッセージを具体化**
|
||
- URL 形式エラー時に受理される 3 形式と「SSH ユーザーは常に `git`」を明記
|
||
- ホスト不許可時に許可済みホスト一覧を併記
|
||
- **Web UI**: リポジトリ URL 入力欄の下に形式ヒントを表示
|
||
|
||
## 注意
|
||
|
||
`claude@…` のような不正ユーザーでも URL 形式としては通るようになったが、その場合の
|
||
`git clone` は Gitea 側で失敗する。失敗ログは `2.1.263-d` で追加した「ログ」ボタンで確認できる。
|
||
正しくは `git@<host>:<org>/<repo>.git`。
|
||
|
||
## バージョン
|
||
|
||
`version` = `2.1.263-e` / `appVersion` = `"2.1.263"`。
|