Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thetnaingtn/forky
Synchronize your forks with ease
https://github.com/thetnaingtn/forky
bubble bubbletea cli fork github github-api go synchronize
Last synced: 3 months ago
JSON representation
Synchronize your forks with ease
- Host: GitHub
- URL: https://github.com/thetnaingtn/forky
- Owner: thetnaingtn
- Created: 2023-06-01T10:39:48.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-13T15:09:03.000Z (6 months ago)
- Last Synced: 2024-11-08T16:18:01.072Z (3 months ago)
- Topics: bubble, bubbletea, cli, fork, github, github-api, go, synchronize
- Language: Go
- Homepage:
- Size: 4.99 MB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# forky
**forky** 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. To use **forky** you'll need to create a Github's personal access token.
## Demo
### Dark
![forky-dark](./forky-dark.gif)
### Light
![forky-light](./forky-light.gif)
## How does forky work basically?
**forky** 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.
## Installation
### Mac OS
```sh
brew install thetnaingtn/tap/forky
```
### npm
Are you a Node.js developer or Node.js is installed on your system? Perfect! **forky** also available as **npm** package
```sh
npm install -g forkyy
```
> Yes, you are right! The package name has an extra `y`. That is because the name `forky` is already taken by another package.
## Usage
```sh
forky --token `your github token`
```
## Keymaps
You can use the following keys to interact with **forky**
| 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 |