【Stable Diffusion】SD WebUI拡張機能のインストールで発生するGitエラーの完全解決ガイド

問題の概要:SD WebUIのExtensionインストールでgitエラーが出る

Stable Diffusion WebUI(以下、SD WebUI)を使用している際、「Extensions」タブから新しい拡張機能をインストールしようとすると、Git関連のエラーが発生してインストールに失敗する問題が頻繁に発生します。この問題は、特にWindows環境で多く報告されており、初心者から中級者まで多くのユーザーを悩ませています。

具体的には、インストールボタンをクリックした後、プログレスバーが進まず、コンソール(コマンドプロンプト)またはWebUIの画面自体に以下のようなエラーメッセージが表示されます。

git: 用語 'git' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。
fatal: not a git repository (or any of the parent directories): .git
error: failed to execute command 'git': 指定されたファイルが見つかりません。

このエラーが発生すると、拡張機能のインストールが完了せず、ControlNetやDynamic Promptsなど、創作に重要な機能が使えなくなってしまいます。

原因の解説:なぜGitエラーが発生するのか?

このエラーの根本的な原因は、主に以下の3つに分類できます。

1. Gitがシステムにインストールされていない

SD WebUIは、拡張機能をGitリポジトリ(コードの保管庫)からクローン(ダウンロード)するために、システムにインストールされたGitコマンドに依存しています。多くのWindowsユーザーはGitを事前にインストールしていないため、このエラーが発生します。

2. Gitの実行パスがシステム環境変数に登録されていない

Gitをインストールしていても、インストール時に「PATH(パス)環境変数に追加する」オプションを選択し忘れている場合があります。この場合、コマンドプロンプトやSD WebUIから`git`コマンドを実行できず、同じエラーが発生します。

3. 既存の拡張機能ディレクトリ内でのGitリポジトリの不整合

過去に拡張機能のインストールに失敗した場合や、手動でファイルを操作した場合などに、拡張機能用のフォルダ内の`.git`ディレクトリ(Gitの管理情報)が壊れたり、欠損したりすることがあります。これにより、Gitが正しくリポジトリとして認識できなくなりエラーが発生します。

解決方法:ステップバイステップでエラーを解消する

以下の手順を上から順に試してみてください。多くの場合、手順1または2で解決します。

手順1: GitのインストールとPATH設定(最も一般的な解決策)

まず、Gitがインストールされているか確認します。コマンドプロンプトを開き、以下のコマンドを実行してください。

git --version

バージョン情報が表示されればGitはインストールされています。エラーメッセージが表示される場合は、以下の手順でインストールします。

  1. Git for Windowsの公式サイトhttps://git-scm.com/download/win)からインストーラーをダウンロードします。
  2. インストーラーを実行し、設定画面が表示されたら、「Adjusting your PATH environment」の選択肢で、「Git from the command line and also from 3rd-party software」(推奨)を選択してください。これにより、SD WebUIを含むすべてのソフトウェアからGitコマンドが使えるようになります。
  3. その他の設定はデフォルトのままで構いません。インストールを完了させます。
  4. インストール後、PCを再起動して環境変数の変更をシステムに反映させます。

手順2: SD WebUIの再起動とインストール再試行

Gitをインストール/設定した後は、SD WebUIを完全に終了させ、再起動します。バッチファイル(`webui-user.bat`)を閉じ、再度実行してください。その後、拡張機能のインストールを再試行します。

手順3: 手動での拡張機能インストール(応用編)

上記でも解決しない場合、または特定の拡張機能のみエラーになる場合は、手動でのインストールが確実な方法です。

  1. SD WebUIの拡張機能ディレクトリに移動します。通常はstable-diffusion-webuiextensionsです。
  2. インストールしたい拡張機能のGitHubリポジトリページ(例: ControlNet)を開きます。
  3. 緑色の「Code」ボタンをクリックし、「HTTPS」タブのURL(例: https://github.com/Mikubill/sd-webui-controlnet.git)をコピーします。
  4. 拡張機能ディレクトリ内で、コマンドプロンプトを開き、以下のコマンドを実行します。
git clone https://github.com/Mikubill/sd-webui-controlnet.git
  1. クローンが成功したら、SD WebUIを再起動します。「Extensions」タブに新しい拡張機能が追加されているはずです。

手順4: 問題のある拡張機能ディレクトリの削除と再インストール

特定の拡張機能フォルダ内でGitリポジトリが壊れている可能性があります。

  1. SD WebUIを終了します。
  2. stable-diffusion-webuiextensionsディレクトリに移動し、問題が発生している拡張機能のフォルダ(例: `sd-webui-controlnet`)を完全に削除します。
  3. SD WebUIを再起動し、WebUIの画面から改めてその拡張機能をインストールし直します。

コード例・コマンド例

Gitインストール確認とPATH確認コマンド

コマンドプロンプトで以下のコマンドを実行し、状況を確認できます。

:: Gitのバージョン確認(インストール確認)
git --version

:: Gitの実行ファイルがあるパスを探す
where git

where gitを実行してパスが表示されれば、PATHは正しく設定されています。何も表示されない場合は、手順1のPATH設定を見直してください。

手動クローンと既存ディレクトリの更新コマンド

手動インストールや更新時に使用するコマンド例です。

:: 新規に拡張機能をクローンする(extensionsディレクトリ内で実行)
git clone [リポジトリのURL]

:: 既に存在する拡張機能のフォルダを最新バージョンに更新する
cd [拡張機能のフォルダ名]
git pull

まとめ・補足情報

SD WebUIの拡張機能インストール時のGitエラーは、「システムにGitが入っていない」という単純な原因であることがほとんどです。最初にGit for Windowsを正しくインストールし、PATH環境変数に追加することを徹底すれば、ほとんどの問題は解決します。

それでもエラーが続く場合は、以下の高度な設定も確認してみてください。

  • webui-user.batの設定確認: set COMMANDLINE_ARGS=の行に--no-git-actionsという引数が追加されていないか確認してください。この引数があると、Gitを使用した拡張機能の管理が無効化されます。一時的な問題解決のために追加したまま忘れているケースがあります。
  • ファイアウォール/セキュリティソフトの影響: 企業ネットワークや厳重なセキュリティ環境下では、GitがGitHubへの接続をブロックされている可能性があります。一時的にセキュリティソフトを無効化して試す、またはプロキシ設定が必要になる場合があります。
  • ディスク容量と権限: インストール先のディスクに空き容量があるか、またstable-diffusion-webuiフォルダに対して書き込み権限があるかを確認しましょう。

SD WebUIはコミュニティによる拡張機能によってその真価を発揮します。Gitエラーで諦めず、本ガイドを参考に問題を解決し、より多様なAIアート創作をお楽しみください。

この記事は役に立ちましたか?