Bộ tạo giấy phép
Việc gửi một dự án mà không có tệp giấy phép về mặt kỹ thuật đồng nghĩa với việc “tất cả quyền được bảo lưu” – không ai được phép sử dụng lại mã nguồn đó. Công cụ này tạo ra văn bản đầy đủ, chưa chỉnh sửa của các giấy phép mã nguồn mở phổ biến nhất, trong đó tên bạn và năm hiện tại sẽ được thay thế vào phần tiêu đề bản quyền. Hãy dán nội dung này vào tệp giấy phép đặt ở vị trí gốc của kho lưu trữ của bạn rồi gửi lên hệ thống.
Cách chọn và tạo giấy phép
-
1
Chọn giấy phép
MIT dành cho mô hình cấp phép mở; Apache-2.0 dành cho mô hình cấp phép mở kết hợp với cấp phép bằng sáng chế; GPLv3 dành cho mô hình copyleft.
-
2
Nhập tên và năm của bạn
Người sở hữu bản quyền là tên pháp nhân hoặc công ty của bạn. Năm là năm đầu tiên sản phẩm được phát hành.
-
3
Xem toàn văn nội dung
Đoạn văn bản giấy phép giữ nguyên như cách OSI/FSF đã công bố; chỉ dòng bản quyền mới thay đổi.
-
4
Đặt vào tệp LICENSE
Lưu vào thư mục gốc của kho lưu trữ của bạn. GitHub sẽ phát hiện và hiển thị tệp này trong thanh bên.
Chọn giữa các tùy chọn phổ biến
Không tồn tại một giấy phép mã nguồn mở nào là “tốt nhất” trên toàn cầu. Quyết định lựa chọn phụ thuộc vào những gì bạn muốn người dùng sau này có thể hoặc không thể thực hiện được.
| Giấy phép | Loại | Cấp bằng sáng chế | Copyleft? | Người dùng nổi bật |
|---|---|---|---|---|
| MIT | Nới lỏng | Ngầm định | Không | Rails, các gói Node, jQuery |
| Apache-2.0 | Nới lỏng | Rõ ràng | Không | Kubernetes, Android AOSP |
| BSD-3-Clause | Nới lỏng | Không | Không | Thư viện chuẩn của Go, Nginx |
| GPL-3.0 | Copyleft mạnh | Có | Có | GCC, Bash, GIMP |
| LGPL-3.0 | Copyleft yếu | Có | Một phần | glibc, Qt (trước đây) |
| MPL-2.0 | Copyleft yếu | Có | Một phần | Firefox, Thunderbird |
| AGPL-3.0 | Copyleft mạng | Có | Có | MongoDB (trước năm 2018), Grafana |
| Unlicense / CC0 | Hiến tặng phạm vi công cộng | - | Không | Các thư viện tiện ích nhỏ |
Ba câu hỏi thực tiễn
-
Bạn có muốn các phiên bản nhánh mã nguồn đóng không? Hình thức giấy phép cho phép (MIT, Apache, BSD) → có; Hình thức giấy phép Copyleft (GPL, AGPL) → không.
-
Bạn quan tâm đến hành vi trả đũa liên quan đến bằng sáng chế không? Apache-2.0, GPLv3 và MPL-2.0 đều có các thỏa thuận cấp phép bằng sáng chế rõ ràng, và những thỏa thuận này sẽ chấm dứt nếu xảy ra tranh chấp pháp lý; trong khi đó, MIT và BSD-2/3 thì không có điều khoản như vậy.
-
Liệu mã nguồn của bạn có chạy như một dịch vụ mạng hay không? AGPL-3.0 đã khắc phục “kẽ hở trong mô hình SaaS” – người dùng dịch vụ được tính vào phạm vi phân phối. Nếu điều này quan trọng, hãy chọn AGPL-3.0; nếu không, GPLv3 đơn giản hơn.
Những lỗi phổ biến cần tránh
- Đừng chỉnh sửa văn bản giấy phép. Giấy phép “MIT với các sửa đổi của tôi” là một loại giấy phép mới và không tương thích; các tòa án sẽ bác bỏ mọi thay đổi được thực hiện một cách tạm thời.
- Không sử dụng hai giấy phép nếu không hiểu rõ tính tương thích giữa chúng. Apache-2.0 và GPLv2 không tương thích với nhau; trong khi đó, Apache-2.0 và GPLv3 lại tương thích với nhau.
- Đừng quên ghi mã nhận dạng SPDX trong các tiêu đề nguồn: mã
SPDX-License-Identifier: MITở dòng 1 sẽ giúp công cụ phát hiện lựa chọn của bạn. - Đừng sử dụng “Creative Commons” cho phần mềm. Các giấy phép CC dành cho các tác phẩm sáng tạo; hãy áp dụng chúng cho tài liệu và hình ảnh, chứ không phải cho mã nguồn.
Phê duyệt hai cấp
Một số dự án được phát hành dưới hai loại giấy phép – thường là một giấy phép copyleft và một giấy phép thương mại – nhằm cho phép các doanh nghiệp lựa chọn áp dụng điều khoản phù hợp với nhu cầu của mình. Qt và MySQL là những ví dụ tiêu biểu thực hiện phương pháp này. Việc lựa chọn giấy phép như vậy có tính phức tạp về mặt pháp lý; nếu bạn không muốn thu lợi nhuận từ dự án, hãy duy trì sử dụng chỉ một giấy phép được OSI phê duyệt.
Câu hỏi thường gặp
MIT là lựa chọn mặc định phổ biến nhất cho các dự án mã nguồn mở quy mô nhỏ: ngắn gọn, linh hoạt trong việc áp dụng, được hiểu rộng rãi và tương thích với hầu hết mọi loại giấy phép khác. Apache-2.0 là lựa chọn an toàn hơn một chút nếu dự án của bạn có những đặc điểm mới mẻ đủ điều kiện được cấp bằng sáng chế.
Đúng vậy. Nếu không có tệp này, mã nguồn của bạn sẽ hoàn toàn thuộc quyền sở hữu trí tuệ và không ai có thể sử dụng lại một cách hợp pháp, việc truy cập công khai trên GitHub không được coi là một giấy phép. Hãy thêm tệp Giấy phép vào cùng ngày bạn công bố kho mã nguồn.
Năm đầu tiên kể từ khi sản phẩm được ra mắt (một năm duy nhất) hoặc một khoảng thời gian kết thúc vào năm hiện tại (ví dụ: “2019–2026”). Việc cập nhật năm mỗi tháng Giêng chỉ là một thói quen thông thường, chứ không phải yêu cầu pháp lý ở hầu hết các khu vực pháp lý.
Không – thao tác thay thế được thực hiện trực tiếp trong trình duyệt của bạn, và tên, năm cũng như loại giấy phép bạn chọn sẽ không bao giờ được gửi đến chúng tôi.
Công cụ liên quan
Bảng tham chiếu ASCII
Bảng ASCII đầy đủ từ 0 đến 127 với giá trị thập phân, thập lục phân, bát phân, nhị phân và ký hiệu tham chiếu ký tự số HTML, gồm NUL, LF và DEL.
Tham chiếu ký tự HTML
Danh sách có thể tìm kiếm các thực thể HTML, mã tên và mã số tương ứng của chúng, cùng chức năng sao chép chỉ với một cú nhấp cho các ký tự đặc biệt và biểu tượng.
Bảng tham khảo phím tắt
Tìm phím tắt mặc định theo tài liệu của VS Code, Chrome và Bash dùng GNU Readline trên macOS, Windows và Linux.
Trình định dạng HTML
Định dạng HTML cục bộ trong trình duyệt với thụt lề hai hoặc bốn khoảng trắng. HTML không được tải lên hoặc xác thực.
Bảng tra cứu nhanh Markdown
Tài liệu Markdown thực dụng với bản xem trước thực tế và ví dụ có thể sao chép cho tiêu đề, danh sách, bảng, mã, liên kết, hình ảnh và cú pháp GFM.
Bảng Tra Regex
Tài liệu tham chiếu biểu thức chính quy có thể tìm kiếm cho JavaScript, PCRE2/PHP, Python re và .NET. So sánh mã thông báo, cú pháp riêng của máy, neo, nhóm, lookaround và cờ.
Công cụ này có phiên bản bằng các ngôn ngữ khác
- Gerador de Licença [PT]
- ライセンスジェネレーター [JA]
- Licensgenerator [SV]
- مولد تراخيص [AR]
- Lizenzgenerator [DE]
- Generador de Licencias [ES]
- Générateur de licence [FR]
- ตัวสร้างไลเซนส์ [TH]
- 라이선스 생성기 [KO]
- Generator Lisensi [ID]
- Licentiegenerator [NL]
- Generator licencji [PL]
- License Generator [EN]
- Generatore di Licenze [IT]
- Генератор лицензий [RU]
- Lisans Jeneratörü [TR]
- 许可证生成器 [ZH]