Stable Diffusion WebUI(AUTOMATIC1111) 버전을 최신으로 업데이트하는 방법
Step 1: 명령 프롬프트에서 Stable Diffusion WebUI 폴더로 이동
- Stable Diffusion WebUI가 설치된 폴더(예: stable-diffusion-webui)로 이동합니다.
- cmd 또는 Git Bash를 열어 해당 디렉터리에서 실행합니다.
cd stable-diffusion-webui
Step 2: Git을 이용한 업데이트
명령 프롬프트에서 현재 WebUI가 최신인지 확인하기 위해 아래 명령어 실행
git pull
- 만약 업데이트가 있으면 자동으로 다운로드됩니다.
- "Already up to date." 메시지가 나오면 최신 버전입니다.
만약 오류가 발생하면 아래 명령어를 실행하여 강제 업데이트
git reset --hard
git pull
Step 3: 필수 패키지 업데이트
Stable Diffusion WebUI는 새로운 업데이트마다 Python 라이브러리가 변경될 수 있습니다. 명령프롬프트에서 아래 명령어를 실행하여 패키지를 최신 상태로 유지하세요.
pip install --upgrade -r requirements.txt
Step 4: 실행 및 확인
업데이트가 완료되면 webui-user.bat를 다시 실행하여 최신 버전이 적용되었는지 확인합니다.
webui-user.bat
웹 브라우저에서 http://127.0.0.1:7860에 접속하여 정상적으로 실행되는지 확인하세요.
업데이트 후 실행 오류가 발생할 경우
venv 폴더 삭제 후 다시 실행
rmdir /s /q venv (Windows)
rm -rf venv (Linux/Mac)
- 그리고 webui-user.bat 실행
Python 환경이 깨졌다면 새로 설치
python -m venv venv
webui-user.bat
Stable Diffusion WebUI(AUTOMATIC1111)를 특정 버전으로 업데이트하거나 롤백하는 방법을 안내해 드리겠습니다.
특정 버전으로 업데이트(또는 다운그레이드)하는 방법
Stable Diffusion WebUI는 Git 태그(Tag) 또는 커밋 해시(commit hash)를 이용하여 특정 버전으로 변경할 수 있습니다.
Step 1: Stable Diffusion WebUI 폴더로 이동
명령 프롬프트(cmd) 또는 Git Bash를 열고 WebUI가 설치된 폴더로 이동합니다.
cd stable-diffusion-webui
Step 2: Git 태그 목록 확인 (업데이트 가능한 버전 조회)
명령프롬프트에서 다음을 입력
git tag
이 명령어를 실행하면 사용 가능한 버전 목록을 확인할 수 있습니다.
v1.0.0
v1.1.0
v1.2.0
v1.3.0
v1.4.0
또는 최신 커밋 목록을 보고 싶다면
명령프롬프트에 다음을 입력
git log --oneline
최근 업데이트된 버전과 커밋 해시를 확인할 수 있습니다.
Step 3: 특정 버전으로 변경하기
원하는 버전(예: v1.3.0)으로 업데이트하려면 아래 명령어를 실행합니다.
git checkout v1.3.0
또는 특정 커밋 해시(예: abcd1234)로 변경하고 싶다면:
git checkout abcd1234
Step 4: Python 라이브러리 업데이트
버전 변경 후에는 패키지를 다시 설치해야 할 수도 있습니다.
pip install --upgrade -r requirements.txt
Step 5: WebUI 실행 및 확인
webui-user.bat
정상적으로 실행되는지 확인하세요!
원래 최신 버전으로 복구하는 방법
특정 버전에서 다시 최신 버전으로 업데이트하려면 다음 명령어를 실행하세요.
git checkout master
git pull
그리고 패키지를 다시 설치하고 실행하면 최신 버전으로 복구됩니다.
현재 브랜치가 없는(Detached HEAD) 상태이므로 git pull이 작동하지 않습니다.
이 문제를 해결하려면 먼저 원래 브랜치(master 또는 main)로 돌아가야 합니다.
해결 방법
현재 상태 확인
먼저 Git 상태를 확인해 봅니다.
git status
또는
git branch --show-current
결과가 비어 있거나 (HEAD detached at ...) 메시지가 나온다면 특정 커밋이나 태그에 고정된 상태입니다.
원래 브랜치로 돌아가기
기본적으로 master 브랜치를 사용하므로 다음 명령어를 실행하세요.
git checkout master
만약 "error: pathspec 'master' did not match any file(s) known to git" 오류가 발생하면 다음을 시도하세요.
git checkout main
둘 중 하나의 명령어가 성공하면 다시 브랜치를 확인하세요.
git branch --show-current
정상적으로 master 또는 main이 표시되면 다음 단계로 진행합니다.
이제 최신 업데이트를 가져옵니다.
git pull
강제 복구 (위 방법이 안될 경우)
만약 git checkout master가 실패하거나 fatal: not a git repository 등의 오류가 발생하면, 강제로 브랜치를 복구할 수 있습니다.
git fetch --all
git reset --hard origin/master
git checkout master
git pull
이 과정이 끝난 후 다시 실행하세요.
webui-user.bat
그래도 문제가 해결되지 않으면?
Stable Diffusion WebUI를 다시 설치하는 것이 가장 빠릅니다.
cd ..
rmdir /s /q stable-diffusion-webui # Windows (cmd)
rm -rf stable-diffusion-webui # Linux/macOS
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui
webui-user.bat
지금 git checkout v1.9.0을 실행한 결과, "detached HEAD" 상태가 되었습니다.
이는 현재 브랜치 없이 특정 커밋(v1.9.0)에 고정된 상태이므로 git pull이 작동하지 않습니다.
해결 방법: 브랜치 생성 후 업데이트
현재 상태에서 업데이트를 하려면 새 브랜치를 생성하고 해당 브랜치에서 작업해야 합니다.
아래 명령어를 차례대로 실행하세요.
git switch -c stable-diffusion-v1.9
git pull
이제 stable-diffusion-v1.9라는 브랜치가 생성되었고, git pull이 정상 작동할 것입니다.
원래 master 브랜치로 돌아가고 싶다면?
만약 특정 버전(v1.9.0)이 아니라 원래 최신 버전(master)을 사용하고 싶다면 다음을 실행하세요.
git checkout master
git pull
만약 master 브랜치가 없다면:
git checkout main
git pull