【許可證】Open Source Licenses

長期更新


擴展:shield.io裝飾

開源許可證(Open Source Licenses)有很多種,每種都有不同的授權和限制,適用于不同目的。

默認的ISC🟰MIT

License是否可商用是否要求開源衍生項目是否必須署名是否有專利授權特點
MIT? 是? 否? 是? 否非常寬松,適合最大范圍使用
Apache 2.0? 是? 否? 是? 有類似 MIT,但有專利保護
GPLv3? 是? 是(強制)? 是? 有Copyleft 強制開源,適合理想主義者
LGPLv3? 是部分要求? 是? 有更寬松的 GPL,可用于商業庫
BSD 2-Clause / 3-Clause? 是? 否? 是? 否和 MIT 類似,更簡潔
MPL 2.0? 是? 是(僅修改部分)? 是? 有文件級別開源,適合公司使用
Unlicense? 是? 否? 否? 否完全放棄版權,相當于公共領域
  • 使用場景
    MIT:適合個人項目、工具庫、想讓別人隨便用【常用】
    Apache 2.0:適合商業公司,希望有專利保護
    GPL:適合你堅持“開源必須回饋開源”的理念
    LGPL:適合你寫的是第三方依賴庫,希望商用項目也能用
    BSD:MIT 的替代品,少數企業偏好
    MPL:適合大型項目,比如瀏覽器,要求不太嚴格
    Unlicense / CC0:你不在乎版權,想讓代碼徹底歸公用領域

使用

  • 其他人使用時需要注意
  1. 保留原始的版權聲明
    無論是源代碼文件、構建后的文件,還是其他分發版本,別人必須保留你原始代碼中的 版權聲明。這通常在代碼文件的頂部或者 LICENSE 文件中。
/** Copyright (c) [年份] [你的名字或組織]* Licensed under the ISC License. See LICENSE file for details.*/
  1. 如果修改了代碼,必須注明修改
    如果其他人在你的代碼上做了修改,他們通常需要按照許可證的要求,在其修改的代碼中注明是基于你的代碼做的修改,并且保留原始的版權聲明。
    這可能會出現在修改過的代碼文件頂部,通常會寫成類似以下內容:
/** Copyright (c) [年份] [原作者的名字或組織]* Modified by [修改者的名字]* Licensed under the ISC License. See LICENSE file for details.*/
  1. 在文檔或 README 文件中注明
    如果他們在自己的項目中使用你的開源包,可以在項目的 README.md 文件或相關文檔中提到你的版權信息和許可證聲明。尤其是當項目涉及多個依賴時,很多開發者會在 README.md 文件中列出依賴的開源項目和它們的許可證類型。
  2. 對于 GPL 許可證的要求
    如果你使用的是 GPL 許可證,要求會更嚴格。除了在代碼中保留版權聲明,如果代碼被修改并發布,修改后的源代碼必須公開,并附帶原始的版權聲明和許可證信息。這意味著,用戶必須在自己的分發版本中附上原始的許可證、版權聲明,并且提供源代碼。

ISC

雖然默認,但是也要加上LICENSE文件

ISC LicenseCopyright (c) [年份] [你的名字或組織]Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

MIT

通常放在你項目的根目錄,文件名叫 LICENSE(無擴展名)
在 package.json 中加 “license”: “MIT”
在 GitHub 上建倉庫時選擇「MIT License」,GitHub 會自動幫你加上

把下面的[年份] [你的名字或組織名]整個替換掉

MIT LicenseCopyright (c) [年份] [你的名字或組織名]Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/904993.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/904993.shtml
英文地址,請注明出處:http://en.pswp.cn/news/904993.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ZooKeeper工作機制與應用場景

目錄 1.1、概述1.2、選舉機制1.2.1、選舉觸發條件1.2.2、選舉規則1.2.3、選舉過程詳解 1.3、數據同步機制1.3.1、正常同步1.3.2、宕機同步 1.4、客戶端常用命令1.5、應用場景1.5.1、配置管理1.5.2、命令服務1.5.3、分布式鎖服務1.5.4、集群管理1.5.5、分布式ID1.5.6、分布式協調…

前端面經-VUE3篇(四)--pinia篇-基本使用、store、state、getter、action、插件

一、基本使用 1、什么是 Pinia? Pinia 是 Vue.js 的官方狀態管理庫,是 Vuex 的“升級版”。它專為 Vue 3 和 Composition API 設計,用于管理多個組件之間共享的數據(也叫“全局狀態”)。 2、為什么需要狀態管理庫&a…

數據結構之圖的遍歷

圖的遍歷 圖的遍歷目的是訪問圖的每一個頂點恰好一次,,同時訪問圖中每條邊恰好一 次。 對于無向圖,常見的遍歷方式有深度優先遍歷(Depth-First Search, DFS) 和廣度優先遍歷(Breadth-First Search, BFS)。…

Ubuntu 第11章 網絡管理_常用的網絡配置命令

為了管理網絡,Linux提供了許多非常有用的網絡管理命令。利用這些命令,一方面可以有效地管理網絡,另一方面出現網絡故障時,可以快速進行診斷。本節將對Ubuntu提供的網絡管理命令進行介紹。 11.2.1 ifconfig命令 關于ifconfig命令&…

Qt解決自定義窗口樣式不生效問題

方法一: this->setAttribute(Qt::WA_StyledBackground, true); 方法二: 將類繼承QWidget 改成繼承 QFrame class MyWidget : public QFrame {} 方法三:重新實現QWidget的paintEvent函數時,使用QStylePainter繪制。 void p…

HNUST湖南科技大學-軟件測試期中復習考點(保命版)

使用說明:本復習考點僅用于及格保命。軟件測試和其他專業課不太一樣,記憶的太多了,只能說考試的時候,想到啥就寫啥,多寫一點!多寫一點!多寫一點!(重要事情說三遍&#xf…

ES6 知識點整理

一、變量聲明:var、let、const 的區別 作用域 var:函數作用域(函數內有效)。let/const:塊級作用域({} 內有效,如 if、for)。 變量提升 var 會提升變量到作用域頂部(值為…

分布式爬蟲去重:Python + Redis實現高效URL去重

1. 引言 在互聯網數據采集(爬蟲)過程中,URL去重是一個關鍵問題。如果不對URL進行去重,爬蟲可能會重復抓取相同頁面,導致資源浪費、數據冗余,甚至觸發目標網站的反爬機制。 對于單機爬蟲,可以使…

C# WPF 顏色拾取器

x:Name=Color Picker 語言:C# WPF 下載:https://download.csdn.net/download/polloo2012/90780640 主界面 顏色庫 關于我們 顏色拾取器是一種能夠幫助用戶獲取顏色信息,并進行顏色選擇、識別和調整的工具,以下將從其常見類型、使用場景及部分軟件工具這幾個維度展開介紹…

Git 使用的全流程以及SourceTree工具的使用操作和忽略文件的配置

1. 安裝 Git 要使用 Git,首先得在你的系統上安裝它。你可以按照不同操作系統的安裝指南來操作: Windows:訪問 Git 官方下載頁面,下載安裝程序并運行。 macOS:可以使用 Homebrew 來安裝,命令為 brew inst…

《深入理解Linux網絡》筆記

《深入理解Linux網絡》筆記 前言參考 前言 前段時間看了《深入理解Linux網絡》這本書,雖然有些地方有以代碼充篇幅的嫌疑,但總體來說還是值得一看的。在這里簡單記錄一下筆記,記錄下對網絡新的理解。 內核是如果接受網絡包的? 如…

數倉-可累計,半累加,不可累加指標,是什么,舉例說明及解決方案

目錄 1. 可累計指標定義:舉例:解決方案: 2. 半累加指標定義:舉例:解決方案: 3. 不可累加指標定義:舉例:解決方案: 4. 總結對比5. 實際場景中的注意事項 這是數據倉庫設計…

NestJS 的核心構建塊有哪些?請簡要描述它們的作用(例如,Modules, Controllers, Providers)

NestJS 核心構建塊解析(Modules、Controllers、Providers) NestJS 是一個基于 TypeScript 的漸進式 Node.js 框架,核心設計借鑒了 Angular 的模塊化思想。下面從實際開發角度解析它的三大核心構建塊,并附代碼示例和避坑指南。 一…

vue2 上傳pdf,拖拽蓋章,下載圖片

效果圖片&#xff1a; 不多廢話上代碼&#xff1a; <template><div class"pdf-stamp" onbeforecopyreturn false onselectdocument.selection.empty() ondragstartreturn false onselectstart return false ><div class"scroll-box" scro…

理性地傾聽與表達:檢索算法的語言學改進

論文標題 Rational Retrieval Acts: Leveraging Pragmatic Reasoning to Improve Sparse Retrieval 論文地址 https://arxiv.org/pdf/2505.03676 代碼地址 https://github.com/arthur-75/Rational-Retrieval-Acts 作者背景 巴黎薩克雷大學&#xff0c;索邦大學&#xff…

MySQL及線程關于鎖的面試題

目錄 1.了解過 MySQL 死鎖問題嗎&#xff1f; 2.什么是線程死鎖&#xff1f;死鎖相關面試題 2.1 什么是死鎖&#xff1a; 2.2 形成死鎖的四個必要條件是什么&#xff1f; 2.3 如何避免線程死鎖&#xff1f; 3. MySQL 怎么排查死鎖問題&#xff1f; 4.Java線上死鎖問題如…

【Reality Capture 】Reality Capture1.5中文版安裝教程(附安裝包下載)

文章目錄 一、Reality Capture1.5中文版安裝教程二、拷貝中文補丁三、Reality Capture1.5中文版下載地址一、Reality Capture1.5中文版安裝教程 1. Reality Capture v1.4.0漢化版安裝包下載并解壓 2. 運行EpicInstaller-15.17.1-4a91a118786f4c2aa3c0093b23f83863.msi 3. 更改…

SVG數據可視化設計(AI)完全工作流解讀|計育韜

AI 的 SVG 創作極限在哪里&#xff1f;絕不是那些初級的流程圖生成和粗糙的商業模型設計。以下是由我們 JZ Creative Studio 通過 Claude 和 Deepseek 開展的專業級 SVG Data Visualization 創作&#xff0c;應廣大讀者強烈要求&#xff0c;專程直播講授了一期 AI 工作流分享。…

not a genuine st device abort connection的問題

1.魔法棒里面電機Settings 2.然后在Other里面把Enabled的鉤子去掉

uv簡單使用

通過uv創建項目和虛擬環境 初始化項目 uv init --package my-project 初始化一個名為 my-project 的新項目&#xff0c;并生成必要的文件結構。 創建虛擬環境 uv venv .venv 激活虛擬環境 # For Windows .venv\Scripts\activate# For macOS/Linux source .venv/bin/acti…