`fetch-depth: 0` is required. A shallow clone (`--depth 1`) hides the previous tag, causing `releaser` to treat every commit as the first release.
{{< /hint >}}
## Detached HEAD
In CI environments where `git checkout` leaves the repository in detached HEAD state, pass the branch name explicitly:
```yaml
script:
- releaser --branch "$CI_COMMIT_BRANCH"
```
## SSH push
When pushing over SSH (`git@host:...` or `ssh://...` remotes), `releaser` attempts go-git SSH agent auth automatically — no extra configuration needed as long as the CI runner has an SSH agent socket available.
For HTTPS remotes without a token, `releaser` delegates to the system `git` binary so credential helpers and `netrc` work as expected.