ComfyUI Won't Update: Fix Git and Downgrade Issues
Fix ComfyUI update failures, "your ComfyUI isn't git repo", update_comfyui.bat confusion, pip dependency drift, and safe downgrade paths.
If ComfyUI will not update, or you need to downgrade after a bad update, first identify which install type you have.
Portable, manual Git installs, and Desktop builds update differently. Running the wrong command can leave you with new code, old dependencies, a broken frontend, or custom nodes that no longer import.
30-second decision
If the error says Your ComfyUI isn't git repo or fatal: not a git repository, stop running Git commands in that folder. Use the portable updater, Desktop updater, or a fresh Git clone based on your install type.
Quick Diagnosis
| Symptom | Likely Cause | Best Next Step |
|---|---|---|
fatal: not a git repository | You have a zip/portable copy, not a Git clone | Do not run more Git commands; use the portable updater or create a clean Git install |
pip install --upgrade comfyui does nothing useful | ComfyUI is not normally updated as a PyPI app | Use the update method for your install type |
New features missing after git pull | Code updated, dependencies did not | Run python -m pip install -r requirements.txt in the same environment |
| Frontend looks old, blank, or missing features | Core frontend dependencies are outdated | Reinstall requirements from the current ComfyUI checkout |
| Custom nodes fail after update | Plugin dependency or API compatibility drift | Disable/update nodes one at a time |
You searched comfyui downgrade | The new version broke a workflow | Prefer restoring a backup or checking out a known commit in a separate test folder |
Step 1: Identify the Install Type
| Install Type | How to Recognize It | Update Method | Downgrade Method |
|---|---|---|---|
| Portable Windows | Has python_embeded, run_nvidia_gpu.bat, and an update folder | Use update batch files | Restore a copied backup folder |
| Manual Git | Has a .git folder inside ComfyUI | git pull plus requirements update | git checkout <commit-hash> or a stable tag |
| Desktop | Installed as the ComfyUI Desktop app | Use the app updater | Usually reinstall an older Desktop build if available |
| Zip copy | No .git, no portable update folder | Reinstall or move to Git/portable | Restore backup only |
Do not continue until you know which one you are using.
Portable Windows Update
In the portable package, use the scripts in the update folder:
| Script | What it does | When to use it |
|---|---|---|
update_comfyui.bat | Updates ComfyUI to the latest development version | Normal updates when you want new features |
update_comfyui_stable.bat | Updates ComfyUI to the latest stable version | Production/stability-focused setups |
update_comfyui_and_python_dependencies.bat | Updates code and reinstalls Python dependencies | Only when dependency repair is needed |
The dependency-heavy script can reinstall many packages, including PyTorch-related packages, and may break custom nodes that depend on specific versions. Before running it:
- Back up the entire portable folder.
- Save important workflows.
- Record custom nodes.
- Keep
models/outside the test copy or make sure model paths are shared safely.
For normal daily updates, start with update_comfyui.bat, not the dependency reinstall script.
Manual Git Update
For a manual install, activate the same environment that runs ComfyUI, then update code and requirements together:
cd ComfyUI
git status
git pull
python main.pyDo not run pip install -r requirements.txt blindly.
- Confirm which Python environment is active (
where pythonorwhich python) - Inspect
requirements.txt— check if it pins torch, numpy, or opencv versions - Install only the missing package when possible:
pip install <package-name> - Run
pip checkafter installation to verify no conflicts were introduced
If you use a virtual environment on Windows:
.\venv\Scripts\activateIf you use Conda:
conda activate comfyuiThe dependency step matters. ComfyUI's official update guide calls out frontend, workflow template, embedded docs, and core utility packages as dependencies that may need to update with the code.
Fix "Your ComfyUI Isn't a Git Repo"
If you see:
fatal: not a git repositoryor a launcher says Your ComfyUI isn't git repo, you are not inside a Git checkout, or the .git folder is missing.
Check:
cd ComfyUI
git statusIf this fails, do not "fix" it by running git init inside the old folder. That creates a new empty Git history and does not turn the folder into the official ComfyUI repo.
Use one of these paths instead:
- portable install: use the
updatefolder scripts - zip copy: download a fresh portable package and move models/workflows carefully
- manual install: clone ComfyUI into a new folder, then point it at your existing model folders
- production machine: preserve the old environment before replacing it
How to Downgrade ComfyUI Safely
Downgrading is safer when you treat the current environment as something to preserve, not something to experiment on.
Best downgrade path: restore a backup
If you made a full folder backup before updating, restore that copy. This is the safest path for portable installs and machines with many custom nodes.
Manual Git downgrade
If your ComfyUI folder is a Git checkout:
cd ComfyUI
git status
git log --oneline -20
git checkout <commit-hash>
python main.pyThen test your workflow. If you want to return to the latest development version:
git checkout master
git pullIf you want the latest stable tag instead:
git fetch --tags
git tag --sort=-creatordate
git checkout <stable-tag>Do not run pip install -r requirements.txt blindly.
- Confirm which Python environment is active (
where pythonorwhich python) - Inspect
requirements.txt— check if it pins torch, numpy, or opencv versions - Install only the missing package when possible:
pip install <package-name> - Run
pip checkafter installation to verify no conflicts were introduced
Do not downgrade the only working production environment without a backup. Older ComfyUI code may need older versions of frontend or dependency packages, and pip install -r requirements.txt does not always undo every package that a newer version installed.
Fix Frontend Package Problems After Update
If the update finishes but the browser UI is missing, old, or broken, check:
python -m pip show comfyui-frontend-packageIf the package is missing or outdated, install only what is needed rather than running all requirements blindly. See the safety checklist above.
For portable:
.\python_embeded\python.exe -s -m pip show comfyui-frontend-package
.\python_embeded\python.exe -s -m pip install -r ComfyUI\requirements.txtSee ComfyUI Frontend Package for the full diagnosis path.
Fix Custom Nodes After Update
If ComfyUI updates but custom nodes fail:
- Read the first
IMPORT FAILEDor traceback in the startup log. - Disable the most recently changed node.
- Update one custom node at a time.
- Avoid running every custom node
requirements.txtat once. - Recheck ComfyUI after each change.
For deeper recovery, use Installed Custom Nodes and Broke ComfyUI.
When Not to Update
Do not update a production ComfyUI environment right before delivery if:
- a client workflow is already working
- you do not have a backup
- custom nodes are pinned to old package versions
- you only want to install one unrelated node
- the machine has limited internet access and cannot recover dependencies
Create a second test environment instead. This is especially important when moving between development/nightly and stable builds.
How Wonderful Launcher Helps
Wonderful Launcher is useful when update risk is higher than the update itself:
- preserve working ComfyUI folders before an update
- keep stable and experimental environments separate
- inspect startup logs after an update
- avoid mixing dependencies from unrelated workflows
- recover faster if a custom node update breaks the environment
If your main issue is missing models after updating, see Where to Put Safetensors in ComfyUI.
FAQ
How do I fix Your ComfyUI isn't git repo?
First confirm your install type. If it is a portable or zip copy without a .git folder, do not run git init. Use the portable update scripts or clone a fresh Git install and move models/workflows carefully.
Which portable update script should I use?
Use update_comfyui.bat for normal development updates and update_comfyui_stable.bat when stability matters more. Use update_comfyui_and_python_dependencies.bat only when dependency repair is needed, because it can reinstall many packages.
How do I downgrade ComfyUI safely?
Restore a backup when possible. For a manual Git install, check out a known commit or tag in a separate test folder first, then install that checkout's requirements in the same Python environment.
Related Guides
- ComfyUI Frontend Package
- ComfyUI Dependency Conflicts
- Install Custom Nodes
- ComfyUI Startup Failed
- ComfyUI Portable
- Manual Install
Source References
Start with Wonderful Launcher if this issue touches your real ComfyUI environment. Use the docs to understand the fix, and use the app to inspect the machine you already have.
Download Wonderful LauncherDid this fix your issue?
Your answer helps prioritize verified ComfyUI repairs.