renan-alm/GitHub Repo Sync

⤵️ Sync repository with remote (GitHub, GitLab, Gitea, Gerrit, and more)

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
source_repoGitHub public repo slug or full https clone url (with access_token if needed). Supports GitHub, GitLab, Gitea, Gerrit, etc.yes
source_branchBranch name to sync fromyes
destination_repoDestination repo full https clone url. For Gerrit repositories, the action automatically uses refs/for/* for review queue pushesyes
destination_branchBranch name to sync to in this repoyes
sync_tagsShould tags also be synced (true/false or regex pattern)no
source_tokenOptional token for accessing source repono
sync_all_branchesSync all branches from source repo (true/false)no
use_main_as_fallbackIf specified branch not found, try main or master as fallback (default true)no
github_app_idGitHub App ID (required if not using github_token)no
github_app_private_keyGitHub App private key (required if not using github_token)no
github_app_installation_idGitHub App installation ID (required if not using github_token)no
github_tokenGitHub Personal Access Token for destination repo. Used for both source and destination if source_token not provided. Alternative to github_app_*no
destination_tokenGitHub Personal Access Token (PAT) for destination repo authentication. Use when destination uses HTTPS and different token than github_token. If source_token is provided, destination_token is requiredno
ssh_keySSH private key content for SSH-based authentication. Can be raw key, escaped key (\\n), or base64 encodedno
ssh_key_pathPath to SSH private key file (alternative to ssh_key)no
ssh_passphrasePassphrase for encrypted SSH private keyno
ssh_known_hosts_pathPath to custom SSH known_hosts fileno
ssh_strict_host_key_checkingEnable strict SSH host key checking (default true)no

no outputs