自己的代码中如果引用了别人的代码段,应该如何声明?

2019-07-08 10:02:48 +08:00
 skiy
别人的代码
a.go
文件在 githubb.com/abc/project/cc/a.go
```
// Abc ...
func Abc() {
...
}

// Cde ...
func Cde() {
...
}
```

我要将别人的这段代码存到自己写的函数中,应该如何声明呢?
a.go
````
// 引用于 https://githubb.com/abc/project/cc/a.go
// Abc ...
func Abc() {
...
}

// Cde ...
func Cde() {
...
}
```

这样合理吗?
4509 次点击
所在节点    程序员
5 条回复
pigsney
2019-07-08 10:15:05 +08:00
那我是不是每次 fork 都要告诉他本人呢
congeec
2019-07-08 10:15:24 +08:00
挺好

注意用某个 commit 的链接,要不上游更新以后链接点进去会变

当然了,还要看那个项目的协议( license )怎么说
skiy
2019-07-08 10:19:25 +08:00
@congeec 我打算引用的是 MIT 的,且是放在 gist 里面的。我是打算加个 URL 过去的,以示尊重吧。
msg7086
2019-07-08 23:57:28 +08:00
MIT 只要求保留许可证。
所以简单说,可以把许可证单独贴在最下面(或者最上面),并写明这个许可证应用于哪几个函数即可。

比如以下这个文件就是 GPL 项目里的 MIT 许可证文件。
https://github.com/msg7086/x265-Yuuki-Asuna/blob/Yuuki/source/output/gop.cpp

你这种情况下可以写
The MIT License applies to Abc() and Cde() only.

如果整个文件都是转载的,那直接写应用到整个文件即可。
文件原始地址写不写都可以。
skiy
2019-07-11 20:05:57 +08:00
@msg7086 学习了,非常感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/580892

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX