Skip to content

Automate the synchronization of all forked repositories for a GitHub account with their upstream sources using GitHub Actions and Python.

License

Notifications You must be signed in to change notification settings

LoveDoLove/Github-Forks-Sync-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License


Logo

Github-Forks-Sync-Manager

Automate the synchronization of all forked repositories for a GitHub account with their upstream sources using GitHub Actions and Python.
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact
  7. Acknowledgments

About The Project

Github-Forks-Sync-Manager provides a GitHub Actions workflow and Python script to automate the process of updating all forked repositories for a specified GitHub account, ensuring they are always in sync with their upstream sources. This is useful for developers and organizations who maintain many forks and want to keep them up-to-date automatically.

(back to top)

Built With

(back to top)

Getting Started

To use this workflow in your own repository, follow the steps below.

Prerequisites

  • A GitHub repository with Actions enabled.
  • A GitHub account with forked repositories you want to keep in sync.
  • A Personal Access Token with repo access, stored as a secret named GH_PAT.

Installation

  1. Copy the workflows/github-forks-sync.yml file into your repository's .github/workflows/ directory.
  2. Ensure your repository has a GH_PAT secret (Personal Access Token with repo access).
  3. Commit and push the changes to your repository.

(back to top)

Usage

  • Go to the "Actions" tab in your repository.
  • Select "Sync All Forked Repositories with Upstream".
  • Click "Run workflow" and enter the GitHub account username you want to update forks for.
  • The workflow will:
    • Fetch all forked repositories for the specified account.
    • Attempt to update each fork to match its upstream source.

You can also schedule this workflow or trigger it via the API as needed.

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Top contributors:

contrib.rocks image

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Contact

LoveDoLove - @LoveDoLove

Project Link: https://github.com/LoveDoLove/Github-Forks-Sync-Manager

(back to top)

Acknowledgments

(back to top)

About

Automate the synchronization of all forked repositories for a GitHub account with their upstream sources using GitHub Actions and Python.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages