Closed. This question does not meet
Stack Overflow guidelines。它当前不接受答案。
想要改善这个问题吗?更新问题,以便将其作为
on-topic用于堆栈溢出。
5年前关闭。
Improve this question
我在github上有一个elisp项目。我不想更改某些源文件和功能,我想彻底更改的某些文件和功能,而其他仅需稍许的更改。每个源文件顶部的原始版权都提到了它来自的项目。
1)我应该重命名所有功能还是仅重命名已更改代码的功能(无论多么次要)?
2)如果我修改了文件中的某些功能,但不是全部/大部分,我应该重命名文件并在顶部更改版权以反射(reflect)我的项目而不是原始项目吗?
3)如果许多/所有文件都被重命名,我该如何归功于原始作者(除了他们的提交显示在git log中)?
注释
我之所以 fork 是因为想要将代码的方向与原先声明的目的截然不同,而我的fork不会被原作者所吸引。
原始项目和我的 fork 都使用GPLv3
按照惯例,Elisp代码在函数/变量的名称前加上项目名称,以避免 namespace 冲突。
**
编辑 **
发布后发现了一些其他信息...
How to rebrand/copyright a forked project (GNU/GPL)?
1) Sure. In fact, not changing it at least a little would imply it's the original project, which is a bad idea.
2) You can't remove copyright notices. Add yours on top.
3) Why do you want to remove the reference to the old project? It's a suggestion, but removing it would be impolite and potentially misleading. The Open Source/Free Software communities value correct attribution.
Need advice on attribution/copyright of heavily modified OSS code (BSD, Apache, etc) in source headers
If you copy even a single function out of a file, unless you could convince a court that the function was too trivial for copyright to apply, then the license of the source file stays with the function
在Stefan的答案和这些stackoverflow帖子之间,我决定:
1)重命名所有文件和功能,即使未更改也不能使用我项目的名称。
2)保留所有现有文件中的原始版权(以及由于将旧代码移入更多逻辑分割而产生的一些新文件)
3)将我的版权添加到所有新旧文件中。
4)在旧版权的上方做一个注释,以在特定提交ID之前检查git历史记录,以在派生时查看原始项目,以及对原始项目url的引用以查看最新版本。
我认为这些更改应明确表明这是一个单独的项目,同时要保留原始名称,并避免任何 namespace 冲突或侵犯版权。
我是一名优秀的程序员,十分优秀!