> ## Documentation Index
> Fetch the complete documentation index at: https://docs.graphify.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Keep the graph current

> Refresh changed files, exclude noise, and recover from stale output.

Graph queries read the saved graph. Update it after changing the source to keep answers relevant.

## Refresh code

```bash theme={null}
graphify update .
```

For an assistant-driven incremental refresh that also considers document context:

```text theme={null}
/graphify . --update
```

The code and semantic paths have separate work and caching behavior. A code-only refresh does not replace a semantic refresh for changed documents.

## Watch the project

Install the `watch` extra, then:

```bash theme={null}
graphify watch .
```

Or install git hooks:

```bash theme={null}
graphify hook install
graphify hook status
```

The hooks refresh after commits and branch switches. They run in the background, so a query immediately after a commit can briefly see the old graph. After `git pull` or a merge, run `graphify update .` explicitly.

## Exclude unhelpful files

Graphify respects ignore files. Add a `.graphifyignore` at the repository root for project-specific exclusions:

```gitignore .graphifyignore theme={null}
node_modules/
dist/
coverage/
*.generated.py
```

`graphify extract --no-gitignore` opts out of Git’s ignore rules while retaining `.graphifyignore`. Use it only when ignored source belongs in the graph.

## After a large refactor

Graphify has guards against accidentally replacing a graph with a smaller incomplete result. If you intentionally removed substantial source, inspect the warning, then explicitly allow the smaller graph:

```bash theme={null}
graphify update . --force
```

Keep a copy of the old graph if you need to compare it. Regenerate visualizations with `graphify export html` after a refresh when necessary.

<div aria-hidden="true" data-graphify-site-styles="true" className="hidden [body:has(&)_.chat-assistant-floating-input::before]:!bg-transparent [body:has(&)_#content-container>span[style*=features-bg]]:!bg-cover [body:has(&)_#content-container>span[style*=features-bg]]:!bg-bottom [body:has(&)_#footer_a[href*='linkedin.com']_svg]:!bg-[#0a66c2] [body:has(&)_#footer_a[href*='discord.gg']_svg]:!bg-[#5865f2] [body:has(&)_#footer_a[href*='github.com']_svg]:!bg-[#181717] [body:has(&)_#footer_a[href*='x.com']_svg]:!bg-[#000000]" />

<div role="navigation" aria-label="Documentation pages" className="not-prose mt-12 grid gap-4 sm:grid-cols-2">
  <a href="/guides/local-development" rel="prev" aria-label="Previous: Run Graphify locally" className="group flex min-h-[112px] flex-col justify-center gap-3 rounded-xl border border-[#c7dbd0] !border-b-[#c7dbd0] bg-[#ffffff] px-6 py-5 text-[#062314] no-underline transition-colors hover:border-[#94b6a2] hover:!border-b-[#94b6a2] hover:bg-[#edf6f0] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-[#4dea9c] items-start text-left"><span className="flex items-center gap-2 text-[11px] font-medium uppercase tracking-[0.08em] text-[#586b60]"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.8" aria-hidden="true"><path d="M15 5l-7 7 7 7" /></svg>Previous</span><span className="text-[15px] font-semibold leading-6">Run Graphify locally</span></a>
  <a href="/guides/headless-extraction" rel="next" aria-label="Next: Extract without an IDE" className="group flex min-h-[112px] flex-col justify-center gap-3 rounded-xl border border-[#c7dbd0] !border-b-[#c7dbd0] bg-[#ffffff] px-6 py-5 text-[#062314] no-underline transition-colors hover:border-[#94b6a2] hover:!border-b-[#94b6a2] hover:bg-[#edf6f0] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-[#4dea9c] items-end text-right sm:col-start-2"><span className="flex items-center gap-2 text-[11px] font-medium uppercase tracking-[0.08em] text-[#586b60]">Next<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.8" aria-hidden="true"><path d="M9 5l7 7-7 7" /></svg></span><span className="text-[15px] font-semibold leading-6">Extract without an IDE</span></a>
</div>
