Answers:
一般而言,CLA可以做以下几件事:
大多数完全志愿服务的项目(例如Rails和Node)都不需要CLA,其原因除了其他方面之外,首先是因为没有后援实体要求他们进行任何有意义的事情。(如前所述,FSF支持的项目是此处的主要例外。)大多数商业支持的开源项目,例如那些作为Google / Oracle / Apple官方产品的开源项目,都需要某种形式的CLA,这都是因为大多数公司都有律师谁去想那些各种各样的东西,因为那里是一个单一的实体后盾强制执行之类的话。
CLA还可以(除本页中提到的其他内容外)保护撰稿人免受法律问题的影响。看看Google的CLA摘录:
除非您希望提供支持,否则不应为您的捐款提供支持。您可以免费或完全免费提供支持。除非适用法律要求或以书面形式达成协议,否则您以“现状”提供捐款,没有任何明示或暗示的保证或条件,包括但不限于TITLE,NON-侵权,适销性或特定目的的适用性。
本杰明的答案很明确,但我想强调一点。CLA保护使用或贡献项目的公司。公司,特别是大型公司,害怕因法律问题而措手不及。我曾经有公司律师告诉人们,我知道即使在扣篮大赛案件中,法律在您身边,您也只能确保大约60%会赢得诉讼。
考虑一家公司的情况,尤其是一家拥有大量收入的非常大的公司,它围绕一个开源工具构建产品。他们获得了客户,建立了基础架构并雇用了员工。如果突然有原始工具的贡献者起诉他们侵犯专利或版权,那么该公司将面临许多法律难题。如果他们停止提供产品,那么他们就会在不需要的基础设施和员工上浪费金钱,更重要的是,他们会激怒客户。另一方面,如果他们停止提供他们的项目,则在确定案件的同时,他们的责任也将终止。
考虑到当前的法律软件形势,CLA是使公司感到满意并使用开源软件并做出贡献的最佳方法。这不是理想的选择(永远不必处理任何此类法律问题会很高兴),但现在它是为这些贡献做出贡献的几种方法之一