[GH-ISSUE #1702] [Bug]: Windows Desktop falsely reports “Git is missing” when launched with stale Explorer PATH #513

Open
opened 2026-10-31 22:13:55 +00:00 by bsakaguchi · 1 comment
Owner

Originally created by @paulreginaphoto on GitHub (Apr 28, 2026).
Original GitHub issue: https://github.com/Comfy-Org/desktop/issues/1702

App Version

v0.8.36

Expected Behavior

ComfyUI Desktop should detect an installed Git for Windows, or at least validate against the current Machine/User PATH on Windows before showing the maintenance page.

Actual Behavior

After a Desktop update/restart, launching from the normal Desktop/Start Menu shortcut showed:

Download git
Git is missing. Please download and install git, then restart ComfyUI Desktop.

Git was already installed and available from a fresh PowerShell:

git --version
# git version 2.54.0.windows.1

where.exe git
# C:\Program Files\Git\cmd\git.exe

The Desktop log showed validation failing only for Git:

[warn]  git not found in path.
Validation result: isValid:false, state:installed {"inProgress":false,"installState":"installed","basePath":"OK","venvDirectory":"OK","pythonInterpreter":"OK","uv":"OK","pythonPackages":"OK","git":"error","vcRedist":"OK"}

Launching the same ComfyUI.exe from PowerShell, where git resolves, passed validation immediately:

Validation result: isValid:true, state:installed {"inProgress":false,"installState":"installed","basePath":"OK","venvDirectory":"OK","pythonInterpreter":"OK","uv":"OK","pythonPackages":"OK","git":"OK","vcRedist":"OK"}
Server start

Steps to Reproduce

  1. Install Git for Windows so C:\Program Files\Git\cmd\git.exe exists.
  2. Have a Windows Explorer/Desktop session whose environment does not include the current Git PATH entry, or update/install Git/ComfyUI without signing out.
  3. Launch ComfyUI Desktop from the Desktop or Start Menu shortcut.
  4. Observe the maintenance page saying Git is missing.
  5. Launch ComfyUI.exe from a fresh PowerShell where git --version works.
  6. Observe validation passes.

Workaround Used

A wrapper that prepends Git's standard install path before starting ComfyUI fixes the launch immediately:

@echo off
set "PATH=C:\Program Files\Git\cmd;%PATH%"
start "" "C:\Users\<user>\AppData\Local\Programs\ComfyUI\ComfyUI.exe"

After that, validation reports "git":"OK".

Suggested Fix

On Windows, Git validation should not rely solely on the inherited process PATH from Explorer. Possible approaches:

  • refresh/merge Machine and User Path from the registry before probing git; or
  • explicitly test common Git for Windows locations such as C:\Program Files\Git\cmd\git.exe and C:\Program Files\Git\bin\git.exe; or
  • use a Windows-aware where.exe git check with a reconstructed PATH.

This would prevent a false maintenance failure when Git is installed but the Electron process inherited a stale PATH.

Debug Logs

[2026-04-28 23:40:17.128] [info]  Using uv at C:\Users\paulr\AppData\Local\Programs\ComfyUI\resources\uv\win\uv.exe
[2026-04-28 23:40:17.128] [info]  Install state: installed
[2026-04-28 23:40:17.129] [info]  Validating installation. Recorded state: [installed]
[2026-04-28 23:40:17.220] [warn]  git not found in path.
[2026-04-28 23:40:17.221] [info]  Validation error - loading maintenance page.
[2026-04-28 23:40:17.223] [info]  Validation result: isValid:false, state:installed {"inProgress":false,"installState":"installed","basePath":"OK","venvDirectory":"OK","pythonInterpreter":"OK","uv":"OK","pythonPackages":"OK","git":"error","vcRedist":"OK"}

Other

A separate Desktop loading-screen issue occurred later and was resolved locally by closing stale processes and clearing Desktop renderer cache/storage. This issue is specifically about the false Git validation failure.

┆Issue is synchronized with this Notion page by Unito

Originally created by @paulreginaphoto on GitHub (Apr 28, 2026). Original GitHub issue: https://github.com/Comfy-Org/desktop/issues/1702 ### App Version v0.8.36 ### Expected Behavior ComfyUI Desktop should detect an installed Git for Windows, or at least validate against the current Machine/User PATH on Windows before showing the maintenance page. ### Actual Behavior After a Desktop update/restart, launching from the normal Desktop/Start Menu shortcut showed: ```text Download git Git is missing. Please download and install git, then restart ComfyUI Desktop. ``` Git was already installed and available from a fresh PowerShell: ```powershell git --version # git version 2.54.0.windows.1 where.exe git # C:\Program Files\Git\cmd\git.exe ``` The Desktop log showed validation failing only for Git: ```text [warn] git not found in path. Validation result: isValid:false, state:installed {"inProgress":false,"installState":"installed","basePath":"OK","venvDirectory":"OK","pythonInterpreter":"OK","uv":"OK","pythonPackages":"OK","git":"error","vcRedist":"OK"} ``` Launching the same `ComfyUI.exe` from PowerShell, where `git` resolves, passed validation immediately: ```text Validation result: isValid:true, state:installed {"inProgress":false,"installState":"installed","basePath":"OK","venvDirectory":"OK","pythonInterpreter":"OK","uv":"OK","pythonPackages":"OK","git":"OK","vcRedist":"OK"} Server start ``` ### Steps to Reproduce 1. Install Git for Windows so `C:\Program Files\Git\cmd\git.exe` exists. 2. Have a Windows Explorer/Desktop session whose environment does not include the current Git PATH entry, or update/install Git/ComfyUI without signing out. 3. Launch ComfyUI Desktop from the Desktop or Start Menu shortcut. 4. Observe the maintenance page saying Git is missing. 5. Launch `ComfyUI.exe` from a fresh PowerShell where `git --version` works. 6. Observe validation passes. ### Workaround Used A wrapper that prepends Git's standard install path before starting ComfyUI fixes the launch immediately: ```cmd @echo off set "PATH=C:\Program Files\Git\cmd;%PATH%" start "" "C:\Users\<user>\AppData\Local\Programs\ComfyUI\ComfyUI.exe" ``` After that, validation reports `"git":"OK"`. ### Suggested Fix On Windows, Git validation should not rely solely on the inherited process PATH from Explorer. Possible approaches: - refresh/merge Machine and User `Path` from the registry before probing `git`; or - explicitly test common Git for Windows locations such as `C:\Program Files\Git\cmd\git.exe` and `C:\Program Files\Git\bin\git.exe`; or - use a Windows-aware `where.exe git` check with a reconstructed PATH. This would prevent a false maintenance failure when Git is installed but the Electron process inherited a stale PATH. ### Debug Logs ```text [2026-04-28 23:40:17.128] [info] Using uv at C:\Users\paulr\AppData\Local\Programs\ComfyUI\resources\uv\win\uv.exe [2026-04-28 23:40:17.128] [info] Install state: installed [2026-04-28 23:40:17.129] [info] Validating installation. Recorded state: [installed] [2026-04-28 23:40:17.220] [warn] git not found in path. [2026-04-28 23:40:17.221] [info] Validation error - loading maintenance page. [2026-04-28 23:40:17.223] [info] Validation result: isValid:false, state:installed {"inProgress":false,"installState":"installed","basePath":"OK","venvDirectory":"OK","pythonInterpreter":"OK","uv":"OK","pythonPackages":"OK","git":"error","vcRedist":"OK"} ``` ### Other A separate Desktop loading-screen issue occurred later and was resolved locally by closing stale processes and clearing Desktop renderer cache/storage. This issue is specifically about the false Git validation failure. ┆Issue is synchronized with this [Notion page](https://www.notion.so/Issue-1702-Bug-Windows-Desktop-falsely-reports-Git-is-missing-when-launched-with-stale-Explo-3506d73d365081d2b893ea939d5f22f8) by [Unito](https://www.unito.io)
Author
Owner

@dosubot[bot] commented on GitHub (Apr 28, 2026):

Hi @paulreginaphoto! I'm Dosu and I’m helping the desktop team.

This is a confirmed pattern — the app validates Git by running git --help via shell execution [1] using canExecuteShellCommand(), which relies entirely on the inherited PATH. There's no fallback to check common install paths or refresh PATH from the Windows registry.

The same root cause is documented in issue #1196 for environment variables on Windows: apps launched from shortcuts/Start Menu inherit Explorer's cached PATH, which can be stale after installing or updating tools like Git. The identical GUI-vs-terminal behavior was also reported on macOS, and issue #1573 tracks improving Git detection reliability more broadly.

The codebase comment explicitly notes it avoids reimplementing PATH search logic, deferring to the system shell instead. The suggestions in this issue (checking common paths, refreshing PATH from registry) would be reasonable enhancements — and the team already has a precedent for explicit environment configuration as a workaround pattern from the Hugging Face endpoint fix in #1196.

To reply, just mention @dosu.


Docs are dead. Just use Dosu.

Leave Feedback Ask Dosu about desktop Share Dosu with your team

<!-- gh-comment-id:4339386225 --> @dosubot[bot] commented on GitHub (Apr 28, 2026): <!-- Greeting --> Hi @paulreginaphoto! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the desktop team. <!-- Answer --> This is a confirmed pattern — the app validates Git by running `git --help` via shell execution [[1]](https://github.com/Comfy-Org/desktop/blob/71fb1e562aeedc5519ba04db39313e8c298158fe/src/main-process/comfyInstallation.ts#L190-L193) using [`canExecuteShellCommand()`](https://github.com/Comfy-Org/desktop/blob/71fb1e562aeedc5519ba04db39313e8c298158fe/src/utils.ts#L41-L50), which relies entirely on the inherited `PATH`. There's no fallback to check common install paths or refresh `PATH` from the Windows registry. The same root cause is documented in [issue #1196](https://github.com/Comfy-Org/desktop/issues/1196) for environment variables on Windows: apps launched from shortcuts/Start Menu inherit Explorer's cached `PATH`, which can be stale after installing or updating tools like Git. The identical GUI-vs-terminal behavior was also [reported on macOS](https://github.com/Comfy-Org/desktop/issues/1632), and [issue #1573](https://github.com/Comfy-Org/desktop/issues/1573) tracks improving Git detection reliability more broadly. The codebase comment [explicitly notes](https://github.com/Comfy-Org/desktop/blob/71fb1e562aeedc5519ba04db39313e8c298158fe/src/utils.ts#L34-L35) it avoids reimplementing PATH search logic, deferring to the system shell instead. The suggestions in this issue (checking common paths, refreshing PATH from registry) would be reasonable enhancements — and the team already has a precedent for explicit environment configuration as a workaround pattern from the Hugging Face endpoint fix in #1196. <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=reply-with-mention&utm_term=Comfy-Org%2Fdesktop).* --- Docs are dead. Just use [Dosu](https://dosu.dev?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-tagline&utm_term=Comfy-Org%2Fdesktop). [![Leave Feedback](https://img.shields.io/badge/Leave%20Feedback-555555?style=flat)](https://app.dosu.dev/response-feedback?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-feedback&utm_term=Comfy-Org%2Fdesktop#message_id=a7baf759-e2cb-4775-b48f-73d18194ad8f) [![Ask Dosu about desktop](https://img.shields.io/badge/Ask%20Dosu%20about%20desktop-2f7b3f?style=flat&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB3aWR0aD0iODYiIGhlaWdodD0iODkiIHZpZXdCb3g9IjAgMCA4NiA4OSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNS4yOTIzNiAxMi43OTI4TDE3Ljc1OTMgNi42ODE4OFY3Mi41NjY3TDUuMjkyMzYgODQuMDYxOFYxMi43OTI4WiIgZmlsbD0iI0I0QkI5MSIvPjxwYXRoIGQ9Ik0xOC4yNTc1IDczLjExOTZMNTkuMTMyOSA3Mi43NDhMNTEuNzAxMSA4Mi40MDk1TDI5LjAzMzggODYuMjkxTDYuMjM5NjIgODUuMTU1NEwxOC4yNTc1IDczLjExOTZaIiBmaWxsPSIjNzc4NTYxIi8%2BPHBhdGggZD0iTTE3LjQ5MTYgMy43MzYzM0wzLjU4NTU3IDEyLjcwOTlWODMuNTc5MkMzLjU4NTU3IDg0Ljc1NDIgNC45ODU2MyA4NS4zNjUyIDUuODQ3MDUgODQuNTY2TDE5LjYyOTYgNzEuNzgwMSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSI2LjQyODQ0IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48bWFzayBpZD0iZG9zdS1kLWN1dG91dCIgZmlsbD0id2hpdGUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDAuNzA0IDAuNTE4MDY2SDE3LjA0MzlWNzYuMjIyMUg0MC43MDRINDIuNTgwNUg0Ny44MDEzQzY4LjcwNjQgNzYuMjIyMSA4NS42NTMzIDU5LjI3NTIgODUuNjUzMyAzOC4zNzAxQzg1LjY1MzMgMTcuNDY1IDY4LjcwNjMgMC41MTgwNjYgNDcuODAxMyAwLjUxODA2Nkg0Mi41ODA1SDQwLjcwNFoiLz48L21hc2s%2BPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MC43MDQgMC41MTgwNjZIMTcuMDQzOVY3Ni4yMjIxSDQwLjcwNEg0Mi41ODA1SDQ3LjgwMTNDNjguNzA2NCA3Ni4yMjIxIDg1LjY1MzMgNTkuMjc1MiA4NS42NTMzIDM4LjM3MDFDODUuNjUzMyAxNy40NjUgNjguNzA2MyAwLjUxODA2NiA0Ny44MDEzIDAuNTE4MDY2SDQyLjU4MDVINDAuNzA0WiIgZmlsbD0iI0YzRjZGMSIvPjxwYXRoIGQ9Ik0xNy4wNDM5IDAuNTE4MDY2Vi02LjU3OTE5SDkuOTQ2NjlWMC41MTgwNjZIMTcuMDQzOVpNMTcuMDQzOSA3Ni4yMjIxSDkuOTQ2NjlWODMuMzE5NEgxNy4wNDM5Vjc2LjIyMjFaTTE3LjA0MzkgNy42MTUzMkg0MC43MDRWLTYuNTc5MTlIMTcuMDQzOVY3LjYxNTMyWk0yNC4xNDEyIDc2LjIyMjFWMC41MTgwNjZIOS45NDY2OVY3Ni4yMjIxSDI0LjE0MTJaTTQwLjcwNCA2OS4xMjQ5SDE3LjA0MzlWODMuMzE5NEg0MC43MDRWNjkuMTI0OVpNNDIuNTgwNSA2OS4xMjQ5SDQwLjcwNFY4My4zMTk0SDQyLjU4MDVWNjkuMTI0OVpNNDcuODAxMyA2OS4xMjQ5SDQyLjU4MDVWODMuMzE5NEg0Ny44MDEzVjY5LjEyNDlaTTc4LjU1NiAzOC4zNzAxQzc4LjU1NiA1NS4zNTU1IDY0Ljc4NjcgNjkuMTI0OSA0Ny44MDEzIDY5LjEyNDlWODMuMzE5NEM3Mi42MjYxIDgzLjMxOTQgOTIuNzUwNSA2My4xOTQ5IDkyLjc1MDUgMzguMzcwMUg3OC41NTZaTTQ3LjgwMTMgNy42MTUzMkM2NC43ODY2IDcuNjE1MzIgNzguNTU2IDIxLjM4NDcgNzguNTU2IDM4LjM3MDFIOTIuNzUwNUM5Mi43NTA1IDEzLjU0NTMgNzIuNjI2IC02LjU3OTE5IDQ3LjgwMTMgLTYuNTc5MTlWNy42MTUzMlpNNDIuNTgwNSA3LjYxNTMySDQ3LjgwMTNWLTYuNTc5MTlINDIuNTgwNVY3LjYxNTMyWk00MC43MDQgNy42MTUzMkg0Mi41ODA1Vi02LjU3OTE5SDQwLjcwNFY3LjYxNTMyWiIgZmlsbD0iYmxhY2siIG1hc2s9InVybCgjZG9zdS1kLWN1dG91dCkiLz48cGF0aCBkPSJNNjguOTIxNSAzNi4wMTM1QzY4LjkyMTUgMzYuMDEzNSA2NS43MzY5IDQ5LjQ3MzggNTEuNDIzMSA0OS40NzM4QzM3LjEwOTMgNDkuNDczOCAzMi41Nzg3IDM3LjM1OTYgMzIuNTc4NyAzNi4wMTM1IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjcuNjkxNjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0wLjM0ODYzMyA4NS40OTQ2QzAuMzQ4NjMzIDg1LjQ5NDYgMjkuNDg1NiA4NS44MzA5IDM0LjgwOSA4NS42OThDNDQuODMzNyA4NS40NDc3IDUxLjI4NzIgODQuNDAyIDU3LjUyNjkgNzguOTcyNEM2Mi44MTI5IDc0LjM3MjcgNzUuMTM0MiA1OS42ODM2IDc1LjEzNDIgNTkuNjgzNiIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSI2LjE2NDgyIi8%2BPC9zdmc%2B)](https://github.dosu.com/Comfy-Org/desktop?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-ask-repo&utm_term=Comfy-Org%2Fdesktop) [![Share Dosu with your team](https://img.shields.io/badge/Share%20Dosu%20with%20your%20team-1f6feb?style=flat)](https://app.dosu.dev/signup?referrer=openSource&source=github-footer&utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-share-team&utm_term=Comfy-Org%2Fdesktop)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Comfy-Org/desktop#513
No description provided.