Skip to content

Latest commit

 

History

History
103 lines (70 loc) · 2.82 KB

CONTRIBUTING.md

File metadata and controls

103 lines (70 loc) · 2.82 KB

How to Contribute

Welcome to the Resonate project! We appreciate your interest in helping us build reliable and scalable distributed systems. To get started, follow these simple steps:

Initial setup

We follow the fork and branch workflow. There will be three Git repositories involved:

  1. upstream - the resonate-sdk-ts repository on GitHub.
  2. origin - your GitHub fork of upstream.
  3. local - your local clone of origin.

These steps are only needed once and not for subsequent changes you might want to make:

  1. Fork the resonate-sdk-ts repository on GitHub to create origin. Visit resonate-sdk-ts GitHub repository and click the Fork button.

  2. Make a local clone of your fork.

    git clone [email protected]:<your-user-name>/resonate-sdk-ts.git
  3. Add a remote pointing from local to upstream.

    cd resonate
    git remote add upstream [email protected]:resonatehq/resonate-sdk-ts.git
  4. Double check the two remotes are referencing the expected url.

    git remote get-url origin   # [email protected]:<your-user-name>/resonate-sdk-ts.git
    git remote get-url upstream # [email protected]:resonatehq/resonate-sdk-ts.git

Development workflow

Here is a outline of the steps needed to make changes to the resonate project.

  1. Make a local branch in your clone and pull any recent changes into it.

    git switch -c awesome_branch
    git pull upstream main
  2. Make changes and commit to local branch.

    git add .
    git commit -m "dead simple"
  3. Pull any changes that may have been made in the upstream repository main branch.

    git pull --rebase upstream main # may result in merge conflicts
  4. Push your branch to the corresponding branch in your fork.

    git push origin awesome_branch
  5. Select the branch you are working on in the drop-down menu of branches in your fork. Then hit the Compare and pull request button.

  6. Once your pull request has been reviewed and approved by a maintainer, select the Squash and merge option. Edit the commit message as appropriate for the squashed commit.

  7. Delete the branch from origin:

    git push origin --delete awesome_branch
    
  8. Delete the branch from local:

    git switch main
    git branch -D awesome_branch
    

What to contribute to?

Here are some areas where your contributions would be valuable:

  • Bug fixes for existing packages.
  • Refactoring efforts to improve code quality.
  • Enhancements to our testing and reliability efforts.

Thank you for your contributions and support in building a better Resonate! 🚀