如何選擇開源許可協(xié)議(二):開放代碼
通過《如何選擇開源許可協(xié)議(一):了解協(xié)議》大概知道了有哪些開源協(xié)議和各個協(xié)議的作用和區(qū)別。我們準備把代碼開放出去時,需要了解各個代碼托管平臺如何設置開源協(xié)議。目前常用的平臺有:googlecode、GitHub、sourceforge、codeplex。下面分別列一下這些平臺如何設置開源協(xié)議:
1、googlecode,google推出的代碼托管平臺,整體可用還是比較強的,如果不是經常被墻用這個也可以。支持svn、git協(xié)議。要在這個上面共享代碼,
- 首先需要注冊一個google賬號,登錄。
- 在url輸入 http://code.google.com/intl/zh-CN/ ,打開網頁后,最下方有個 create a new project。
- 點擊創(chuàng)建工程后,可以選擇自己工程的開源協(xié)議。預定義協(xié)議支持不是太多,主要有常見的BSD、GPL、MIT、APACHE、ECLIPSE、MPL。沒有包含的可以選擇other open source 填寫。
2、github, 這個后期之秀,由于git協(xié)議本身的優(yōu)勢這幾年也賺足了眼球。更有2011年的報道: Github 的提交次數(shù)超過了Sourceforge、Google Code和微軟的CodePlex。 這么火的代碼托管工具我們當然也要在這個上面共享代碼,
- 需要注冊一個github賬號,登錄。
- 在首頁中間有個 create repositories,創(chuàng)建代碼工程。和google code 不同的是,github沒有直接選擇開源協(xié)議這一項。這篇文章可以看得出GitHub一族,正在推動開源軟件走向無授權時代。如果要在github設置開源協(xié)議如何設置呢?其實很簡單,在剛創(chuàng)建的工程主頁,點擊添加文件按鈕。
- 新建一個文件LICENSE(這個命名隨意,只要能說明清楚就行),把你需要設置的協(xié)議內容復制到對應的文件中去就可以了。當然你想特別說明一下,也可以在項目主頁的readme.txt中說明。比如 https://github.com/apache/activemq 的license 設置。
- 這個license可以根據自己需要設置,不過最好還是標準模板大家更規(guī)范一些。
- 剛寫完github沒法設置,今天登錄卻發(fā)現(xiàn)github已經增加了開源協(xié)議選項,csdn也有了相關的新聞《Github 終于開始認真考慮開源項目許可證了》??磥砣魏蔚胤蕉歼€是需要規(guī)范化,畢竟開源本身就是一個社會群體活動,有了大家的積極參與才能長久持續(xù)下去。
- ps:托管Git (開源或閉源)項目的網站閉源需要收費,最低7$/月起,另有免費的300G空間,超過也要單獨收費,不過作為咋普通開源項目也足夠了。
3、sourceforge,曾經很輝煌的全球最大開放源代碼軟件開發(fā)平臺和倉庫,現(xiàn)在雖然有github這樣的競爭者追趕,但依然還是老大。它有這些優(yōu)勢:無帶寬限制、提供下載統(tǒng)計分析、每天巨大的流量增加你的文件的曝光率、SourceForge 在開源領域可信度高、支持svn和git協(xié)議。
- 然后在account頁選中projects tab,右邊有個 Register a New Project超鏈接,點擊就可以創(chuàng)建項目了。
設置開源協(xié)議,點擊項目進入項目主頁,選擇admin tab =》 左側導航Categoryization =》 頁面 license。
sourceforge的協(xié)議支持非常多,有開源協(xié)議控的可以多看看,不得不說這個界面操作還是有點復雜。
4、codeplex。最后再看看微軟的這個代碼托管工具。打開頁面設計的還比較直接,顯示了幾個大按鈕,可以很容易就點擊到??吹绞醉摻缑娌恢涝O置開原協(xié)議如何操作?是不是像界面這幾個按鈕一樣簡單。
- 登錄codeplex,可以使用微軟賬號登錄。
- 創(chuàng)建項目,在項目創(chuàng)建頁依然沒有協(xié)議設置,只有googlecode有。
- 點擊創(chuàng)建的project,進入project的設置頁面,選擇 license tab,點擊 tab下方右邊一點的 change license鏈接后 找到自己需要的協(xié)議設置。它支持的協(xié)議和google code差不多,多了微軟協(xié)議和CDDL。比較了目前最常見的集中開源項目托管平臺對開源協(xié)議的支持和如何操作,大家按自己需求選擇吧。