Contributing to GitHub Projects

Contributing to GitHub Projects

Jan 31, 2021 · 2 min read · 217 Words · -Views -Comments

I once read “GitHub brings more than open source—it reshapes how you think.” The gist: don’t just copy frameworks; build something yourself. Struggling through a tool or library forces you to grow. GitHub isn’t just a free buffet—it’s a platform to contribute.

For years I barely contributed—laziness was the main reason. Over the last year I started submitting PRs (ADR, awesome-mac, IDEA plugins, v2ray-docker, Alfred workflows). It cost time but paid off: sharper skills, new friends, better English. Open source gives back.

Contribution Flow

Standard projects usually have a CONTRIBUTING doc (see awesome-mac). Follow that first. For a typical contributor (not a maintainer), the flow looks like this:

  1. Fork the repo.
  2. Clone your fork locally (GitHub CLI or IDE integration works well).
  3. Commit and push changes to your fork.
  4. Open a pull request from your fork to the upstream repo.
  5. Wait for maintainer review.
  6. Once merged, your code lands in the main project.

Keep Your Fork in Sync

After a PR lands, your fork doesn’t update automatically. Options:

  1. Delete and re-fork (simple but heavy-handed).
  2. Rebase your local fork:
    git fetch upstream
    git checkout master
    git rebase upstream/master
    git push -f origin master
    

Most IDEs (e.g., IntelliJ IDEA) provide GUI support for this.

rebase

Closing Thoughts

Contribute when you can—it pays dividends while keeping you connected to the community.

Alan H
Authors
Developer, Tech Enthusiast, Open Source Advocate