Skip to content

ykankaya/backstroke

 
 

Repository files navigation

Backstroke Backstroke

A Github bot to keep a fork updated with any changes made to its upstream. Heavily inspired by Greenkeeper.

Build Status Gratipay Team Website

Support via Gratipay

Add Backstroke to a repository

  1. Go to backstroke.us, and sign in with your Github account.
  2. Click Create new link
  3. Add a source repo under the text From (the big, green box)
  4. Add a destination repository under the text To, or choose All Forks to sync to all forks of the source repo.
  5. Click Save. If you push a change to the repo listed under From, you'll get a pull request with any updates in the repo(s) under To!

Use Backstroke classic

Backstroke classic is no longer the recommended way to set up Backstroke, however, if you'd prefer to live with a few limitations, it's still available.

  1. Create a webhook in either a fork or a upstream repository. (Settings => Webhooks & Services => Add Webhook)
  2. Add http://backstroke.us as the payload url.
  3. Create the webhook, and push some code to the upstream repository to see Backstroke in action.

How it works

How Backstroke Works

For a contributor

  1. You push code to Github.
  2. Backstroke will create a pull request with any unmerged upstream changes.
  3. You accept Backstroke's pull request, and have updated code. Merging your code back upstream later on is painless.

For an open source maintainer

  1. You get a pull request from a contributor.
  2. Backstroke will create a pull request on their fork that lets them merge in your upstream changes.
  3. They accept Backstroke's pull request, and you merge in their code.

FAQ

  • I don't see any pull requests on the upstream....: Pull requests are always proposed on forks. Take a look there instead.

  • I didn't sign up for this and now I'm getting pull requests. What's going on?: This is because the upstream added backstroke to their repository. Some project maintainers use backstroke as an easy way to keep contributor's local forks up-to-date with later changes, but if you'd rather tackle that unassisted, here's how to disable backstroke on a fork.

  • Why isn't Backstroke working?: Take a look at the webhook response logs. Most likely, you'll see an error. Otherwise, open an issue.

  • Is Backstroke really all that useful?: If you never merge upstream, then no, not really. Otherwise, if you hate resolving merge conflicts, then it's great.

  • Does Backstroke work outside of Github?: Not yet. If there's interest, I'd love to give it a try, though.


By Ryan Gaus

About

🏊 A Github bot to keep repository forks up to date with their upstream

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 63.3%
  • CSS 34.8%
  • HTML 1.8%
  • Shell 0.1%