What are the ethics & etiquette of forking someone else’s github project to release it as a gem?

So, if you’re not going to release a gem, just go ahead and fork (assuming the license allows it) and don’t worry about it. That’s 100% OK and even expected behavior at this point. Forks are actually one of the easiest ways to accept patches from contributors. The network graph is often a good way to evaluate both the health of a project as well as the potential areas for improvement.

If you intend to release a gem because the original has become unmaintained, you should either:

  • Release it as username-originalgemname
  • Contact the original author and offer to take it over. Then push new gems under the original name.

If you intend to release a gem because you need changes to the gem that would not benefit the community as a whole, you should either:

  • Unpack the gem into a vendor directory and never release
  • Release it as username-originalgemname

In most cases, there is no problem with a gem release named username-originalgemname. This was the model that the GitHub gem repository took, so that’s how most people handle forks at this point.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)