You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
Repository Sync Hub
v1.4.0
A GitHub Actions for sync current repository to other hub.
- Sync branches and tags to other repository (GitHub, GitLab, Gitee, etc.)
- Target repository support SSH and HTTP URL
- Automatic delete branches and tags that is deleted
- Can triggered on
PUSH
andDELETE
event - Can triggered on a timer (
SCHEDULE
)
Be sure to run the actions/checkout in a step before this action.
# File .github/workflows/sync-ssh.yml
steps:
-
name: Checkout
uses: actions/checkout@v3
with:
# Must be specified as 0, otherwise git does not allow push because of shallow updates.
fetch-depth: 0
-
name: Sync
uses: ttionya/Repository-Sync-Hub@v1
with:
# Sync to target repository full clone URL.
target_repository: '[email protected]:ttionya/Repository-Sync-Hub-Test.git'
# SSH key used to authenticate with git operations.
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
# File .github/workflows/sync-http.yml
steps:
-
name: Checkout
uses: actions/checkout@v3
with:
# Must be specified as 0, otherwise git does not allow push because of shallow updates.
fetch-depth: 0
# Be sure use your own access token when you want to sync to GitHub repository,
# only HTTP URL need this.
token: ${{ secrets.HTTP_ACCESS_TOKEN }}
-
name: Sync
uses: ttionya/Repository-Sync-Hub@v1
with:
# Sync to target repository full clone URL.
target_repository: 'https://github.com/ttionya/Repository-Sync-Hub-Test.git'
# Login name used to authenticate with git operations.
http_access_name: 'ttionya'
# Personal Access Token (PAT) used to authenticate with git operations.
http_access_token: ${{ secrets.HTTP_ACCESS_TOKEN }}
Note: Access token needs workflow access, it will automatically check the full access to the repository.
You can see sample workflows for more usages.
Dependabot triggered Actions can't access secrets now, you can view details here.
Inspired by the following actions which may be more suitable for your workflow.
MIT