All Projects → repo-sync → Github Sync

repo-sync / Github Sync

Licence: mit
⤵️ A GitHub Action for syncing current repository with remote

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Github Sync

Pull
🤖 Keep your forks up-to-date via automated PRs
Stars: ✭ 3,364 (+1926.51%)
Mutual labels:  fork, sync
sync-fork
the quickest way to sync your fork: npx sync-fork
Stars: ✭ 15 (-90.96%)
Mutual labels:  sync, fork
Fork Sync
🔄 Github action to sync your forks
Stars: ✭ 99 (-40.36%)
Mutual labels:  fork, sync
Github Action Markdown Link Check
Check all links in markdown files if they are alive or dead. 🔗✔️
Stars: ✭ 132 (-20.48%)
Mutual labels:  action
Redux Dataloader
Loads async data for Redux apps focusing on preventing duplicated requests and dealing with async dependencies.
Stars: ✭ 139 (-16.27%)
Mutual labels:  action
Syncstorage Rs
Sync Storage server in Rust
Stars: ✭ 149 (-10.24%)
Mutual labels:  sync
Metasync
Asynchronous Programming Library for JavaScript & Node.js
Stars: ✭ 164 (-1.2%)
Mutual labels:  sync
Telegram Forward Bot
Simple Telegram Bot for forwarding messages easily between various related channels and groups.
Stars: ✭ 132 (-20.48%)
Mutual labels:  sync
Nbmake Action
GitHub Action for testing notebooks
Stars: ✭ 151 (-9.04%)
Mutual labels:  action
Drivesync
Google Drive synchronization for Linux
Stars: ✭ 148 (-10.84%)
Mutual labels:  sync
Cloudcore
Framework that enables syncing between iCloud (CloudKit) and Core Data
Stars: ✭ 146 (-12.05%)
Mutual labels:  sync
Pr Size Labeler
🏷 Visualize and optionally limit the size of your Pull Requests
Stars: ✭ 140 (-15.66%)
Mutual labels:  action
Gitconverter
Синхронизация хранилища конфигурации "1С:Предприятия" с репозиторием Git и последующим переходом на разработку в 1C:Enterprise Development Tools (1C:EDT) с сохранением истории
Stars: ✭ 149 (-10.24%)
Mutual labels:  sync
Release Drafter
Drafts your next release notes as pull requests are merged into master.
Stars: ✭ 2,119 (+1176.51%)
Mutual labels:  action
Gcloud
GitHub Action for interacting with Google Cloud Platform (GCP)
Stars: ✭ 153 (-7.83%)
Mutual labels:  action
Figma Action
Export image assets from Figma to GitHub
Stars: ✭ 134 (-19.28%)
Mutual labels:  action
Realm Draw
The official Realm Draw app used in promotional videos
Stars: ✭ 150 (-9.64%)
Mutual labels:  sync
Upload To Release
A GitHub Action that uploads a file to a new release.
Stars: ✭ 144 (-13.25%)
Mutual labels:  action
Easyappointments
Easy!Appointments is a highly customizable web application that allows customers to book appointments with you via a sophisticated web interface. Moreover, it provides the ability to sync your data with Google Calendar so you can use them with other services. It is an open source project that you can download and install even for commercial use. Easy!Appointments will run smoothly with your existing website as it can be installed in a single folder of the server and of course share an existing database.
Stars: ✭ 2,013 (+1112.65%)
Mutual labels:  sync
Goaction
Write Github actions in Go
Stars: ✭ 149 (-10.24%)
Mutual labels:  action

GitHub Sync

All Contributors

A GitHub Action for syncing the current repository using force push.

Features

  • Sync branches between two GitHub repositories
  • Sync branches from a remote repository
  • GitHub action can be triggered on a timer or on push
  • To push to a remote repository, please checkout git-sync
  • Support syncing tags.

Usage

Create a personal access token and add to repository's secret as PAT

GitHub Actions

# File: .github/workflows/repo-sync.yml

on:
  schedule:
  - cron:  "*/15 * * * *"
  workflow_dispatch:

jobs:
  repo-sync:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/[email protected]
      with:
        persist-credentials: false
    - name: repo-sync
      uses: repo-sync/[email protected]
      with:
        source_repo: ""
        source_branch: ""
        destination_branch: ""
        github_token: ${{ secrets.PAT }}

If source_repo is private or with another provider, either (1) use an authenticated HTTPS repo clone url like https://${access_token}@github.com/owner/repository.git or (2) set a SSH_PRIVATE_KEY secret environment variable and use the SSH clone url

Advanced Usage: Sync all branches

  1. Make a backup
  2. Create a new branch in your repo (destination repo), it should not share the name with any branch in source repo
  3. Make the new branch the default branch under repo settings
  4. Use * for both source_branch and destination_branch
  5. Optionally, you can force sync all tags:
    with:
      sync_tags: "true"
    

This will force sync ALL branches to match source repo. Branches that are created only in the destination repo will not be affected but all the other branches will be hard reset to match source repo. ⚠️ This does mean if upstream ever creates a branch that shares the name, your changes will be gone.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Wei He

💻 📖 🎨 🤔

Zeke Sikelianos

📖 🤔

Alex Page

🐛

xtqqczze

💻 📖

Kay Harrison-Sims

🐛

Gibby

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].