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 形式表を追加
1.5 KiB
1.5 KiB
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」を明記 - ホスト不許可時に許可済みホスト一覧を併記
- URL 形式エラー時に受理される 3 形式と「SSH ユーザーは常に
- 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"。