この記事で扱うこと
任意の記事手順どおりに stable-diffusion-webui を git clone できたものの、webui-user.bat 起動時に追加リポジトリの取得(clone)で失敗し、セットアップが止まるケースの対処をまとめます。
前提(ここまではできている状態)
以下は完了している想定です。
-
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.gitが成功し、stable-diffusion-webuiフォルダが作成されている -
stable-diffusion-webui配下のwebui-user.batを実行してインストール・起動を行う流れを試している
症状
webui-user.bat 実行時に「Connect to GitHub」ウィンドウが表示され、ブラウザでサインイン後、最終的に次のようなエラーで停止します。
RuntimeError: Couldn't clone Stable Diffusion.
Command: "git" clone --config core.filemode=false "https://github.com/Stability-AI/stablediffusion.git" "C:\Users\...\stable-diffusion-webui\repositories\stable-diffusion-stability-ai"
Error code: 128
原因
初回セットアップ時、WebUI は追加コード取得のために https://github.com/Stability-AI/stablediffusion.git を clone しようとしますが、当該リポジトリが利用できない(削除・非公開化など)状態になっており、clone が失敗してインストールが中断します。(GitHub)
補足として、この clone は stable-diffusion-webui/repositories/stable-diffusion-stability-ai が存在しない場合に行われるため、過去に正常取得できていた環境では再現しないことがあります。(GitHub)
解決策(推奨):stable-diffusion-webui を dev ブランチへ切り替える
GitHub Discussion で案内されているとおり、dev ブランチでは clone 先がフォークに更新されており、この問題を回避できます。
手順
-
stable-diffusion-webuiディレクトリでターミナルを開く - 以下を実行
git switch dev git pull -
stable-diffusion-webui\webui-user.batを再実行
これで WebUI の起動まで進むようになります。
代替策:環境変数 STABLE_DIFFUSION_REPO を設定して回避する(ブランチを変えたくない場合)
「dev は使いたくない」「別ランチャー都合でブランチ運用を変えにくい」場合は、WebUI が参照する clone 元を環境変数で差し替える方法も案内されています。
Windows(webui-user.bat を編集する方法)
stable-diffusion-webui\webui-user.bat に次の1行を追加します(call webui.bat より前)。
set STABLE_DIFFUSION_REPO=https://github.com/w-e-w/stablediffusion.git
その後、webui-user.bat を実行します。
追加トラブルシューティング(まだ失敗する場合)
修正を適用しても失敗する場合、途中まで作成されたフォルダが残っていることがあるため、以下を削除してから再実行すると改善するケースがあります。
stable-diffusion-webui\repositories\stable-diffusion-stability-ai
まとめ
- エラーの本質は「WebUI が初回セットアップで clone しようとする
Stability-AI/stablediffusionが利用できず、clone が失敗すること」 - 推奨の解決策は
stable-diffusion-webuiをdevブランチへ切り替えて更新(git switch dev→git pull) - ブランチを変えたくない場合は、
STABLE_DIFFUSION_REPOの環境変数で clone 先を差し替える
参考
- GPUSOROBAN のインストール手順記事(GPUSOROBAN)
- GitHub Discussion: Fix(dev ブランチ更新/
STABLE_DIFFUSION_REPOの案内)(GitHub)