开源软件必须公布在 github 之类的网站上么? 如果只是放在自己的网站上,是否可以算开源? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fan123199
V2EX    问与答

开源软件必须公布在 github 之类的网站上么? 如果只是放在自己的网站上,是否可以算开源?

  •  
  •   fan123199 2014-08-07 10:37:19 +08:00 7108 次点击
    这是一个创建于 4149 天前的主题,其中的信息可能已经有所发展或是发生改变。
    举个例子,如果公司A使用了你的代码做了一个project,但是不遵循GPL协议开放源代码,并称是自主开发。然后,公司B抄袭了公司A的project。公司A告了公司B。公司B为了躲避指控,称project中的代码是开源的,不算抄袭。公司A为了自己的利益,不想公布你的网站。 关键在于公证处通过google搜索,由于你网站未被google搜录,找不到你的网站,故认定你的那段代码不是开源的。最后那个判断合理吗?
    30 条回复    2014-08-08 08:56:06 +08:00
    huage
        1
    huage  
       2014-08-07 11:13:30 +08:00
    我觉得只要你公布你的整体源代码,没有加密,应该就算开源了吧。开源的本义是open source,你全部open了,应该就OK了。

    不过我对于严格意义或者讲行业规范上的认知不是很了解,SO个人意见!
    Tink
        2
    Tink  
    PRO
       2014-08-07 11:13:47 +08:00
    公布了源码就是开源
    semicircle21
        3
    semicircle21  
       2014-08-07 11:18:52 +08:00
    有点绕晕了,
    "B为了躲避指控,称project中的代码是开源的," 那么就要遵守这个project的协议.

    最后的判断不合理, 按我的理解:
    未被Google收录不等于不开源, 只要任何人提出想要这段代码, 代码的维护者给了, 就算开源的.
    比如各大手机厂商的ROM, 是基于Linux的,但并未提供公开下载. 像CyanogenMod这样的第三方开发者索要源代码的时候, 这些厂商提供了, 就算满足了开源协议.
    pandada8
        4
    pandada8  
       2014-08-07 11:25:15 +08:00 via Android
    就算代码公开了也可以使用商业的许可证禁止衍生
    fan123199
        5
    fan123199  
    OP
       2014-08-07 11:32:15 +08:00   1
    @semicircle21 因为你知道那些rom是基于Linux的,所以可以要求他们开源,但比如公司拿了开源的代码,并删掉了中间的开源声明,并称是自主开发的。这样外面的人完全无法判断。
    gotounix
        6
    gotounix  
       2014-08-07 11:34:02 +08:00
    在没有github之前就没有开源软件了?!当然有啦!
    fan123199
        7
    fan123199  
    OP
       2014-08-07 11:35:13 +08:00   1
    @Tink
    @huage
    @pandada8
    主要是涉及到了版权问题。不然对于开发者来说,有源码当然是开源, 可以拿来用。
    jsonline
        8
    jsonline  
       2014-08-07 11:38:15 +08:00
    那要看你的 lisence 是什么类型的。跟是否公开没关系吧。
    如何选择开源许可证?
    作者: 阮一峰
    http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html
    bitbegin
        9
    bitbegin  
       2014-08-07 11:50:51 +08:00 via Android
    @semicircle21 gpl要求是主动提供吧。如果自己索要他才提供应该违反协议的
    lyragosa
        10
    lyragosa  
       2014-08-07 11:52:49 +08:00
    当然不是,只要你在软件中附上了开源的lisence就说明是开源。
    甚至都不用放上网。

    另外 开源之后 衍生产品是否要求开源也是开发者自己定的,不是说开源的东西就一定要求衍生也开源。没记错的话安卓就是允许衍生产品闭源。
    10iii
        11
    10iii  
       2014-08-07 12:25:18 +08:00   1
    中国实践,算不算请问法院。这里讨论无意义。

    真的想从理论上讨论,判断开源的关键在软件发布时声明使用的许可证。而不在于代码放不放在网上。

    开源许可证有很多种,从字面理解,只要是允许用户得到软件源代码的许可证都可以算开源许可证。但是同为开源许可证,有的可能是禁止修改或者重新发布的,这种源代码是不能复制到自己软件中使用的。

    至于用户得到源代码的形式,则没有限制。最早的时候开源软件很多是以二进制形式发行,但是你可以联系作者,支付合理的载体费和邮费,原作者邮寄一份源代码给你。有可能是软盘光盘,也可能是打印稿。

    有一些软件即使源代码是在网上随手查得到的,但是他也不是开源软件。比如非法盗取在网上公布,比如原作者误操作放在网上,然后被复制传播。这样的代码公开并不改变软件的所有权和版权性质。
    bitbegin
        12
    bitbegin  
       2014-08-07 12:27:56 +08:00 via Android
    @lyragosa 开源协议一大堆,你这是说的哪个?
    semicircle21
        13
    semicircle21  
       2014-08-07 12:45:51 +08:00
    @bitbegin 这个我不了解, 我猜 GPL的主动提供 是指 比如发到社区的邮件列表, 告知大家我做了XXX修改 等等?
    在以前的公司改Linux时, 我就想过这个问题, 当时不求甚解了, 后来...中国公司嘛, 就没然后了.
    semicircle21
        14
    semicircle21  
       2014-08-07 13:00:47 +08:00
    @fan123199 那这么说, 实际上B司只要提供出自己是从哪里找到的代码不就行了? 顺便附带上许可协议之类, 那不就足以说明问题了.

    如果project作者已经被A司收买了, 甚至就是A司的员工, 那就真说不清了. 因为, 如果project的全部贡献者都同意的话, 软件的License是可以被更改的, 甚至某个补丁, 某些部分都可以是不同的License, 这要调查起来, 是个无底洞.

    顺便问一句, 您是在代理知识产权纠纷的律师吗?
    imn1
        15
    imn1  
       2014-08-07 13:23:56 +08:00
    我在个人网站下的开源软件多了去了~
    开源协议(或授权使用条款)也不必是公用协议GPL之类,自定的也可以,写清楚就行
    主要是下载源必须带有协议,例如打包了给别人下载,包里面也要带上协议,协议文件命名、存放点及文件格式都应是一目了然

    我曾见过开源协议写在ms word里面,很搞笑,虽然ms word也有免费工具可以阅读,但完全搞不清开源主是怎么想的

    LZ说的例子很像某数字公司最近的一宗争议事件
    muzuiget
        16
    muzuiget  
       2014-08-07 13:24:08 +08:00   2
    > 开源软件必须公布在 github 之类的网站上么?

    不,任何网站都行。

    > 如果只是放在自己的网站上,是否可以算开源?

    就看有没有同时附上许可证了,如果没有许可证,那不能算“开源”,只能算“公开”了。

    “开源”指“开放源码”,“开放”就是你可以修改,重新打包发布,纳入自己的软件中。

    “公开”就单纯的给你看,眼看手勿动,就给你看看软件是底层怎么实现的,方便你调试之类的,微软早期就是这种做法。

    > 然后,公司B抄袭了公司A的project。

    到底怎么“抄袭”法?
    icanfork
        17
    icanfork  
       2014-08-07 13:46:13 +08:00
    @muzuiget 没有 licence,不是默认使用某个licence 吗?
    jacob
        18
    jacob  
       2014-08-07 14:08:09 +08:00
    @belin520 软件是你写的,是属于你的,怎么可能有默认的许可证呢?我觉得你对开源的理解有错误。
    davepkxxx
        19
    davepkxxx  
       2014-08-07 14:10:27 +08:00
    有一些公司都是自己建立网站维护自己的开源库,这很正常。
    bitbegin
        20
    bitbegin      2014-08-07 16:11:03 +08:00 via Android
    @semicircle21 所以说gpl协议使用很严格,尤其商用的产品代码,要主动提供源代码
    bitbegin
        21
    bitbegin  
       2014-08-07 16:13:17 +08:00 via Android
    @pandada8 gpl没有商用优先,无法禁止衍生
    bitbegin
        22
    bitbegin  
       2014-08-07 16:16:08 +08:00 via Android
    @fan123199 这只能说只有我们国人才能干出来。企业要注意诚信,瞒得了一时,瞒不了一世。
    msg7086
        23
    msg7086  
       2014-08-07 16:22:46 +08:00
    @jacob 有默认许可证的。默认的就是版权所有,所谓的 "All rights reserved"。

    ---

    至于贴上开源许可证,实际上是重新定义了软件的权利归属,比如规定了是否可以修改和再发布,比如规定了是否必须公开修改后的源代码(GPL),比如规定了是否可以与闭源软件链接(LGPL),等等。

    像CC许可就有很多不同的版本,规定的内容也都不同。
    9hills
        24
    9hills  
       2014-08-07 16:36:55 +08:00
    @semicircle21 GPL不要求把源代码放上网,任何人要代码的时候你只要愿意给就行
    9hills
        25
    9hills  
       2014-08-07 16:37:36 +08:00
    @belin520 默认License有的,就是保留一切权利
    nicai000
        26
    nicai000  
       2014-08-07 16:40:57 +08:00
    你可以双LICENSE啊, 给A商业授权, 其它GPL, 并不矛盾
    dorentus
        27
    dorentus  
       2014-08-07 20:28:50 +08:00   2
    GPL 似乎有人有误解,简单举个例子吧,例如 GPLv2 的 Linux kernel,假如我拿来修改了自己用,那么即使你来问我要代码我也没有任何义务给你。

    但是只要我去分发,把我这个修改过的 linux kernel 给任意第三人,那么我就得按照 GPLv2不能仅给二进制的,而必须同时提供源码、并且采用的许可证必须不能违反 GPLv2(或者说被 GPL 传染了:不能禁止别人再次分发、必须禁止别人再次分发的时候的使用违反 GPLv2 的许可证)。

    ----
    楼主的事情,只要原始代码确实是你写的,并且公司 A 没有得到你的授权,或者你的项目使用了某开源许可证公开了源码、但是公司 A 使用了其代码却没有遵守许可证,那么公司 A 就已经错了。和开不开源其实关系不大。

    至于到法院那里具体会怎么认定或者需要什么证据,我就不清楚了,咨询律师呗。
    fan123199
        28
    fan123199  
    OP
       2014-08-07 23:01:15 +08:00   1
    @semicircle21 不是,我是程序猿,不过这是从学知识产权的女友那里听到的
    fan123199
        29
    fan123199  
    OP
       2014-08-07 23:04:55 +08:00   1
    @muzuiget 抄袭的具体不是很清楚,好像是直接copy核心部分。对于学IT的我,只是想搞清楚开源这个概念,以后我们也可能遇到。 这种著作权的诉讼可以是上刑事诉讼哦!
    kneep
        30
    kneep  
       2014-08-08 08:56:06 +08:00
    算。别人关心的是你的license,不是你托管代码的地方。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3054 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 45ms UTC 12:45 PVG 20:45 LAX 04:45 JFK 07:45
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86