synrk is a CLI tool that you can use to synchronize your forks with upstream repositories. You can select more than one repository at a time and synchronize them.
[Syn]chronize Fo[rk]s
Warning
synrk
was previously known as forky
. The package has been renamed for clarity and future development. The codebase remains the same—only the name has changed.
forky
is now deprecated and will no longer receive updates.
synrk detect the default
branch(main
, master
, or trunk
whatever it is) of your forked repository and will try to compare it with the upstream repository's same-named
branch to find how many commits behind by your forked repositories are. Then it will show available forks which left behind the upstream repositories to synchronize.
brew install thetnaingtn/tap/synrk
Are you a Node.js developer or Node.js is installed on your system? Perfect! synrk also available as npm package
npx synrk@latest --token `your github token`
synrk --token `your github token`
By default, forks that have been updated on the same day the command is run are excluded. To include these forks, use the -f flag.
synrk --token `your github token` -f
You can use the following keys to interact with synrk
Key | Description |
---|---|
a | Select all forks |
n | Select none of the forks |
space | Toggle(select/unselect) the fork |
r | Refresh |
m | Merge the selected fork with upstream branch |
q | Quit |