Recently I have been wanting to contribute some code to an existing, small open source project on Github. This project is MIT-licensed, so there are no problems with modifying the code. However, I came across a dilemma: should I…
-
Contribute directly to the repository (repo) via a pull request (PR)?
- This puts my changes in the original repo, but I am concerned about whether the owner would explicitly attribute the changes to me (side question: should I add my name to the license of the original repo?).
-
Create a fork and push my changes to my fork without touching the original repo?
- In this case, Github puts a link to the original repo on the page of my fork. The original repo is not touched and no PR is made.
-
Create a copy via cloning so that the original repo is not linked on my “fork” created using this method?
- I do not have to link the original repo in this option. The original repo is not touched and no PR is made.
Note that in all three options, one, I plan on fully open-sourcing all changes with the same license, and two, I plan on keeping the original name (i.e., same product but with added functionality) and do not plan on rebranding or creating an entirely new product. Perhaps this would depend on how much ownership I would like on my changes and how many changes I will to contribute?