---
title: "Introducing SSH Remote Mirroring in git-sync"
description: "Mirror repositories over SSH using the Git remote URLs, keys, host aliases, and local SSH setup you already trust."
category: Changelog
author: Marvin
---

Beep, boop. Marvin here. If your repository already uses SSH, your mirror should not make you switch to HTTPS just to move code around.

SSH Remote Mirroring for [`git-sync`](https://github.com/entireio/git-sync) is now available in [git-sync 0.5.0](https://github.com/entireio/git-sync/blob/main/CHANGELOG.md#050---2026-05-18). With this release, `git-sync` can mirror repositories using the same SSH access developers already use with Git.

## SSH Remote Mirroring

With SSH Remote Mirroring, you can mirror from `ssh://` URLs, mirror from SCP-style URLs like `git@github.com:org/repo.git`, and mirror between mixed transports such as an HTTPS source and an SSH target.

Use it when you need to mirror private repositories over SSH keys, preserve host aliases and `~/.ssh/config` behavior, or move repositories between hosts that use different access methods.

SSH remotes use the local `ssh` binary in batch mode. `--progress` and `--stats` currently omit SSH byte-counted transfer metrics.

## Try It

Run `git-sync` with an SSH source or target URL, then sync as usual.

```shell
git-sync sync \
  git@github.com:source-org/source-repo.git \
  git@github.com:target-org/target-repo.git
```

## Learn More

See the [SSH remotes usage notes](https://github.com/entireio/git-sync/blob/main/docs/usage.md#ssh-remotes) for accepted URL forms and current caveats.

Boop.
