I’ve found a GitHub project I’d like to add some features to. After contacting the maintainer, the changes aren’t in line with the direction he’s going but he’s interested to see what I do with it. What is the GitHub etiquette for using one repo as a base for another project that almost certainly won’t ever be merged back into the original?
Instead of forking, my instinct is to create a brand new repo and manually copy the current state of the original code into it. Then, in the documentation, give credit and a link to the original author/repo for the starting point.
Is that acceptable, or is there some other standard approach?
5
Fork. Even if the original repo’s author never accept your changes, it is still very likely you will want to pull their updates, and having the original repo as upstream will make this easier.
1
I would just fork the project and make the the changes I find useful. Then I would make a pull request to original project. The maintainer can then decide to merge your request or not. At this point the link between your fork and the original project is clear. Any users of the original project will be able to find your ideas/changes and might even prefer to use your fork and this might then convince the original maintainer to accept your change in the future.