I maintain an open-source project. Somebody made a pull-request two days ago, and I accepted it. Now I realized, that a large portion of the pull-request is just a copy-pasted from another project (not owned by us). For obvious reasons I want to get rid of the commit. The two options I see are:
- Revert the commit with another commit. Problem: the code is still in the history.
- Rewrite the history. Dangerous, as other people might already have branches containing this commit. In fact I know one person beside me who already has (but is he the only one?)
Note: my case is a little bit special, and I think I just choose the first option. The original author doesn't have a very clear licence, and even allows to use parts of the content as long as we don't claim ownership. However I still find it very unethical to just copy every single word (as it is 95% text and 5% code).
But let's assume we have a more difficult case, and the licence of the source project explicitely doesn't allow copying/modifying their code.
What are the legal consequences? I know that we already messed up big, and I guess that the other project can still claim that we used parts of their code in either option.
Is option 1 even a good way to proceed? This might be a cause other problems, as anybody can look up the code in the history, and think they can use it as long as it complies with our licence.
As option 2 is also quite bad, are there other options?