1 问题描述
在部署stable-diffusion-webui项目时,出现RuntimeError: Couldn't determine Stable Diffusion's hash错误,错误信息如下:
[root@localhost stable-diffusion-webui]# sh webui.sh
################################################################
Launching launch.py...
################################################################
Cannot locate TCMalloc (improves CPU memory usage)
Python 3.8.5 (default, Sep 4 2020, 07:30:14)
[GCC 7.3.0]
Version: v1.4.0
Commit hash: 394ffa7b0a7fff3ec484bcd084e673a8b301ccc8
Traceback (most recent call last):
File "launch.py", line 38, in <module>
main()
File "launch.py", line 29, in main
prepare_environment()
File "/opt/stable-diffusion-webui/modules/launch_utils.py", line 299, in prepare_environment
git_clone(stable_diffusion_repo, repo_dir('stable-diffusion-stability-ai'), "Stable Diffusion", stable_diffusion_commit_hash)
File "/opt/stable-diffusion-webui/modules/launch_utils.py", line 145, in git_clone
current_hash = run(f'"{git}" -C "{dir}" rev-parse HEAD', None, f"Couldn't determine {name}'s hash: {commithash}").strip()
File "/opt/stable-diffusion-webui/modules/launch_utils.py", line 107, in run
raise RuntimeError("\n".join(error_bits))
RuntimeError: Couldn't determine Stable Diffusion's hash: cf1d67a6fd5ea1aa600c4df58e5b47da45f6bdbf.
Command: "git" -C "/opt/stable-diffusion-webui/repositories/stable-diffusion-stability-ai" rev-parse HEAD
Error code: 129
stderr: Unknown option: -C
usage: git [--version] [--help] [-c name=value]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
2 解决方法
(1)查看git版本
[root@localhost stable-diffusion-webui]# git --version
git version 1.8.3.1
如果当前版本为1.8,先要将git升级到最新版本,升级命令如下:
把老版本的 Git 卸掉。
sudo yum -y remove git
sudo yum -y remove git-*
添加 End Point 到 CentOS 7 仓库
sudo yum -y install https://packages.endpointdev.com/rhel/7/os/x86_64/endpoint-repo.x86_64.rpm
安装 Git
sudo yum -y install git
完成后查看git版本
[root@localhost ~]# git --version
git version 2.41.0
(2)依次忽略相关文件夹
由于git安全机制问题,导致项目读取不到相应的stable-diffusion-stability-ai等插件
。通过如下命令解决:文章来源:https://uudwc.com/A/rXRZ2
git config --global --add safe.directory /opt/stable-diffusion-webui/repositories/stable-diffusion-stability-ai
git config --global --add safe.directory /opt/stable-diffusion-webui/repositories/CodeFormer
git config --global --add safe.directory /opt/stable-diffusion-webui/repositories/k-diffusion
git config --global --add safe.directory /opt/stable-diffusion-webui/repositories/BLIP
git config --global --add safe.directory /opt/stable-diffusion-webui/repositories/taming-transformers
至此,问题已经解决文章来源地址https://uudwc.com/A/rXRZ2