# version_exists

> This version is already published with a different archive or visibility; releases are immutable.

| | |
| --- | --- |
| Kind | `disko` command error |
| `disko` exit code | 5 (conflict) |

`disko publish` reports `version_exists` when the registry already holds the
same game and version with a different digest or a different visibility. The
command exits with code 5. Publishing the identical archive with the same
visibility again is not an error: it succeeds and changes nothing.

## Wrong

Changing the game and publishing again without changing `version`:

```json title="game.json"
{
  "game": "gabriel/arena",
  "version": "1.4.2"
}
```

## Right

Raise `version` for every changed build, then publish.

```json title="game.json"
{
  "game": "gabriel/arena",
  "version": "1.4.3"
}
```

## See also

- [Releases](/registry/releases)
- [Publish a release](/get-started/publish)
