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

# Entire-Native Branches

> Push branches that stay on Entire when GitHub is down.

## What Is an Entire-Native Branch?

When you mirror a repository with Entire, it stays in sync with GitHub as its primary origin. You clone and fetch from a regional Entire mirror, but every push still routes to GitHub. By design, pushes are only as fast as GitHub allows, and when there is an outage, you cannot push at all.

Entire-native branches let you keep pushing during an outage and absorb the heavy write traffic of agent workflows. Use one when you have several agents working in parallel, or when you need pushes to be fast. An Entire-native branch skips the sync with GitHub and stays on Entire, in the region that hosts your repository.

## Push to an Entire-Native Branch

To enable an Entire-native branch, you just need to name your branch with the `entire/unmirrored/` prefix and push as usual:

```bash theme={null}
git switch -c entire/unmirrored/agent-work
git push entire entire/unmirrored/agent-work
```

The branch lands on the placement that receives the push and stays there.

## Or Tell Your Agent

If you do not want to type this prefix manually, add this to your `CLAUDE.md`, `AGENTS.md`, or equivalent:

```markdown theme={null}
When asked to push to Entire (not GitHub), push to a branch named
`entire/unmirrored/<task-name>`. When asked to publish to GitHub,
push the same commits to a branch without that prefix.
```

### Push and Prompt as Normal

From then on, when prompting your agent, instruct it where the work should go, and it will pick the right branch automatically.

When you want the work to stay on Entire:

> Push this to Entire, not GitHub.

When you want it on GitHub:

> Publish this to GitHub.

The agent handles the branch names. Native branches stay on Entire until you publish them. And you can continue coding and pushing even when GitHub is down.

## Publish the Work Upstream

Entire-native branches don't sync to GitHub automatically. When you are ready to bring the work into your GitHub repo, push it again under a normal branch name without any prefix:

```bash theme={null}
git push entire HEAD:agent-work
```

## Access and Permissions

You still need write access to push, the same as with any mirrored branch. Entire checks this against the access list it syncs from GitHub every hour. See [Mirror Access and Permissions](/guides/repositories/mirror-access-and-permissions) for how that sync works.

## Limitations

* Entire does not currently back up Entire-native branches, so if you need to keep the work for a longer time, you need to save a copy somewhere else too.
* The branch lives in the single region you pushed it to. Entire does not copy it to your other regions.

## Continue With

<CardGroup cols={2}>
  <Card title="Mirrors" icon="clone" href="/guides/repositories/mirrors">
    Learn how a mirror serves a GitHub repository from an EntireDB cluster.
  </Card>

  <Card title="Mirror Access and Permissions" icon="lock" href="/guides/repositories/mirror-access-and-permissions">
    Understand GitHub-synced access, hourly collaborator sync, and offboarding.
  </Card>

  <Card title="Mirrors in CLI" icon="terminal" href="/guides/repositories/mirrors-in-cli">
    Create mirrors and configure Git remotes from the Entire CLI.
  </Card>

  <Card title="Troubleshooting" icon="wrench" href="/guides/repositories/troubleshooting">
    Fix missing repositories, app access, clone, fetch, and push issues.
  </Card>
</CardGroup>
