Skip to content

ComfyGit

Git for your ComfyUI environments — version control, package management, and reproducible sharing.

Highlights

  • 🔄 Isolated environments — test new nodes without breaking production
  • 📦 Git-based versioning — commit changes, rollback when things break
  • 🚀 One-command sharing — export/import complete working environments
  • 💾 Smart model management — content-addressable index, no duplicate storage
  • 🔧 Standard tooling — built on UV and pyproject.toml, works with Python ecosystem
  • 🖥️ Cross-platform — Windows, Linux, macOS

Installation

$ curl -LsSf https://astral.sh/uv/install.sh | sh
$ uv tool install comfygit
PS> powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
PS> uv tool install comfygit

Then, check out the installation guide or read on for a brief overview.

Tip

ComfyGit can also be installed with pip. See all methods on the installation page.

Environments

ComfyGit manages isolated ComfyUI environments with version control:

$ cg init
Initialized ComfyGit workspace at ~/comfygit

$ cg create my-project --use
Created environment 'my-project'
Downloading ComfyUI v0.3.10...
Installing Python dependencies...
Active environment: my-project

$ cg node add comfyui-impact-pack
Resolving comfyui-impact-pack...
Installing ComfyUI-Impact-Pack from registry
 + comfyui-impact-pack@1.2.3
Syncing Python dependencies...
Resolved 45 packages in 1.2s

$ cg run
Starting ComfyUI at http://localhost:8188

See the installation guide to get started.

Version Control

ComfyGit tracks your environment state with Git, so you can commit changes and rollback when things break:

$ cg commit -m "Added Impact Pack"
[main a28f333] Added Impact Pack
 1 file changed, 15 insertions(+)

$ cg node add comfyui-ipadapter-plus
Installing ComfyUI-IPAdapter-Plus from registry
 + comfyui-ipadapter-plus@2.1.0

$ cg commit -m "Added IPAdapter"
[main b39g444] Added IPAdapter
 1 file changed, 8 insertions(+)

$ cg log
b39g444 Added IPAdapter
a28f333 Added Impact Pack
9c1e222 Initial environment

$ cg revert HEAD
Reverting commit b39g444...
Removing comfyui-ipadapter-plus...
[main c40h555] Revert "Added IPAdapter"

See the version control guide to learn more.

Sharing

Export your complete environment for sharing, or sync with Git remotes for team collaboration:

$ cg export my-workflow.tar.gz
Exporting environment 'my-project'...
Bundling node metadata...
Bundling model sources...
Created my-workflow.tar.gz (2.3 MB)

$ cg import my-workflow.tar.gz --name imported-env
Importing environment...
Installing 12 custom nodes...
Downloading 3 models from CivitAI...
Syncing Python dependencies...
Created environment 'imported-env'

Or use Git remotes:

$ cg remote add origin https://github.com/you/my-env.git
$ cg push
Pushing to origin...
Branch 'main' pushed to origin

$ cg import https://github.com/team/shared-env.git --name team-env
Cloning repository...
Installing dependencies...
Created environment 'team-env'

See the export & import guide to get started.

Model Management

ComfyGit indexes models by content hash, preventing duplicates and enabling path-independent resolution:

$ cg model index sync
Scanning models directory...
Indexed 47 models (156.3 GB)

$ cg model download https://civitai.com/models/133005
Downloading juggernautXL_v9.safetensors...
Downloaded to checkpoints/juggernautXL_v9.safetensors
Added to model index

$ cg model index find "juggernaut"
checkpoints/juggernautXL_v9.safetensors
  Hash: 7f3a8b2c...
  Size: 6.46 GB
  Source: civitai.com/models/133005

See the model management guide to learn more.

Learn more

Community & Support