經常使用Git代碼託管服務分享css
Git Repository代碼託管服務愈來愈流行,目前有不少商業公司和我的團隊逐漸切換項目到 Git平臺進行代碼託管。本文分享一些經常使用的Git代碼託管服務,其中一些提供私有項目保護服務,特別有利於遠程團隊協做開發項目使用。html
GitHub前端
目前最流行的Git服務,也是人氣最旺盛的Git代碼託管網站。可是私有項目須要付費,我的認爲GitHub更適合開源項目使用,不少開發人員在這個平臺上分享開發經驗,同時協做完成項目。程序員
GitLabgithub
GitLab是值得推薦的一款代碼託管網站,該項目是由開源項目GitLab.Org衍生而來(MIT),支持免費私有項目代碼託管,該項目是基於Ruby on Rails, 支持10人開發團隊,無限私有代碼託管庫服務。緩存
在使用過程當中,發現不少好用的功能,例如代碼對比,bug追蹤等。不只如此, 該網站還支持免費SaaS服務GitLab Cloud。ruby
Bitbucket
同時值得推薦的是Bitbucket, 免費支持5個開發成員的團隊建立無限私有代碼託管庫。
CodePlex
CodePlex是由微軟推出的代碼託管服務,早期僅支持TFS,如今已經支持Git和Mercurial。該網站集合大量微軟開發項目,適合從事微軟開發技術人員使用,目前不支持私有項目。
CloudHost
http://cloudhost.io/
剛推出的雲端代碼託管服務,免費提供1000個私有代碼託管庫,無限公用代碼託管庫,無限空間,值得推薦。
CloudBees
提供免費Git和SVN代碼託管服務,免費2G空間。
Assembla
提供一個免費3人團隊的私有代碼託管服務,有Email通知服務。空間爲500M。
GitCafe
GitBlit
Codeplan
planio
ProjectLocker
Unfuddle
GitHub Enterprise
Trac
Gitorious
最後對比目前較爲流行的Git託管服務,
補充:國內的Git服務
1、VS2013中克隆遠程Git倉庫和SSH的配置
首先感謝園友的評論和補充,今日又仔細看了一下,VS2013中是能夠克隆項目的,只是我一直用的GitHub來克隆的,因此沒有注意到。咱們打開VS2013,切換到團隊資源管理器,如圖:
點擊鏈接到團隊項目...,會看到以下圖界面:
點擊克隆,輸入遠程Git地址,而後點擊克隆按鈕,就會將遠程倉庫的項目克隆到本地,路徑爲下面文本框中的地址,咱們也能夠點擊後面的...按鈕進行修改或者手動輸入。
若是安裝了Github客戶端,GitHub客戶端會自動的配置SSH。下面咱們來講一下本身配置SSH,首先單擊鼠標右鍵,打開Git Bash here,打開Git命令窗口,如圖:輸入命令:
ssh-keygen -t rsa -C "your_email@youremail.com"
點擊回車,出現以下提示:
這個時候咱們看到詢問咱們保存key的路徑,使用默認便可,直接敲回車繼續,這裏我已經生成過了,因此我輸入了新的路徑和文件名,回車後會讓輸入兩次密碼(passphrase),輸入一個大於4位的密碼便可。而後會看到SSH生成成功,如圖:
2、推薦幾個經常使用的Git代碼託管平臺
說到Git代碼託管平臺,首先推薦的是GitHub,好多好的開源項目都來自GitHub,可是GitHub只能新建公開的Git倉庫,私有倉庫 要收費,若是你作的是一個開源項目,能夠首選GitHub。下面推薦幾個比較好的Git代碼託管平臺,這裏我不作過多的說明和評價,也好讓你們多看看,比 較一下,找到本身的"真愛"。
關於GItHub相信你們都有耳聞,我就不詳細介紹了。GitHub地址:https://github.com/,其首頁如圖:
對於有些人,提到GitHub就會天然的想到Gitlab,Gitlab支持無限的公有項目和私有項目。Gitlab地址:https://about.gitlab.com/,其首頁截圖如圖:
bitbucket 免費支持5個開發成員的團隊建立無限私有代碼託管庫 。bitbucket地址:https://bitbucket.org/,首頁如圖:
前面說的都是國外的,下面來講幾個國內的。開源中國一個帳號最多能夠建立1000個項目,包含公有和私有,開源中國代碼託管地址:http://git.oschina.net/,其首頁如圖:
開源中國在幾個月前又發佈了團隊協做開發平臺,和代碼託管平臺一塊兒,打造了一個十分好的團隊開發平臺,開源中國團隊協做平臺地址:http://team.oschina.net/,團隊協做平臺支持任務的建立、討論、便籤等,如圖:
談到coding.net,首先必須提的是速度快,功能與開源中國類似,一樣一個帳號最多能夠建立1000個項目,也支持任務的建立等。coding.net地址:https://coding.net/home.html,其首頁如圖:
CSDN代碼託管地址:https://code.csdn.net/,首頁如圖:
京東代碼託管平臺地址:https://code.jd.com/,首頁如圖:
說到這裏,也差很少了,雖然我不想影響你們的選擇,可是仍是想表達一下個人見解,我我的比較喜歡GItHub、開源中國、Coding.net這個三個。
3、使用SSH
在上面咱們使用Git bash生成了SSH的公鑰和私鑰,下面以coding.net爲例介紹一下如何將公鑰部署到遠程Git倉庫,打開設置中心,如圖:
選擇SSH公鑰,填寫公鑰名稱(能夠隨意起名字),而後把咱們剛剛從id_rsa.pub裏面複製出來的東西粘貼到 SSH-RSA公鑰key 這個文本框中便可。如圖:
添加完成後,咱們打開Git命令窗口測試,輸入以下命令:
ssh -T git@coding.net
這個時候會提示你是否繼續鏈接,如圖:
輸入yes,回車繼續,會出現以下提示,如圖:
若是是開源中國,會提示以下信息:
開發者服務市場最近忽然火爆起來了,各類雲服務層出不窮,就以最基本的代碼託管服務爲例,國內也有好多家,我挑了幾家主流的作了一個橫向評測,以供各位碼農參考。
1、 性能測試
咱們用代碼託管服務通常有兩種訪問方式,客戶端以及 Web 端。客戶端通常用來拉/推代碼,在實際測試的過程當中發現,客戶端操做在不一樣的服務商那裏差別性很是小,因此就沒有整理成報告。主要的體驗不一樣在 Web 端。
我分別從北京和廣東兩個地方進行了一系列經常使用的 Web 端操做,記錄了時間。我選取了10個不一樣的開源項目,有大有小,對這些項目分別進行一樣的操做作對比。測試的數據和過程我所有列出來了,有興趣的能夠用一樣的方法在你的環境中測試,我相信獲得的數據應該是相似的。
一、測試環境
l 主機:青雲主機,2核/2G RAM
l 網絡:2Mbps出(因爲是服務器,入口帶寬應該很大的,具體數據未知)
l 操做系統:Microsoft Windows 2003 R2 32Bits
l 瀏覽器:Mozilla Firefox 32.0.3
二、測試內容
(1)打開項目的代碼目錄樹
(2)打開項目單個文件查看代碼
(3)打開commit列表頁
(4)打開commit詳情頁
三、測試結果
l 地域:北京
(1)打開項目的代碼目錄樹
(2)打開項目單個文件查看代碼
(3)打開commit列表頁
l 地域:廣東
(1)打開項目的代碼目錄樹
(2)打開項目單個文件查看代碼
(3)打開commit列表頁
(4)打開commit詳情頁
四、結果說明
l 上述測試結果數據的單位爲秒,數值越小越好。
l Coding 的 Commit 詳情頁的打開速度在圖表上基本看不到是由於數值過小(特別是北京),我懷疑跟預先作了相關的緩存有關。
l 因爲下行網速比較大,因此傳輸耗時能夠忽略,測試數據能夠大體等同於服務器處理並輸出數據所用的時間。
l 我不是很能理解爲啥 git@osc 和 csdn 都是用的 gitlab 可是性能差別這麼大。
l Github 的數據須要考慮牆的因素。
l 各服務商及不一樣頁面的加載方式對比:
1、功能測試
我這裏列出了經常使用的代碼託管服務的功能,作了一個表格,清晰明瞭。可能有某些功能遺漏,歡迎來信告知。
這裏有幾點須要說明:
1.私有項目的 Pull Request,Coding.net 是經過 Merge Request 實現的,名字不一樣,功能同樣的。
2.保護分支看起來是 Coding.net 專門爲團隊協做開發的,某些分支只有某些帳戶具備寫操做,防止開發中的誤操做。
3. 兼容 SVN 彷佛全世界只有 github 實現了。
4.代碼質量分析 Coding.net 和 git@osc 都是經過 Sonar 實現的,Coding .net 支持的語言多一些,但分析的質量都很通常。
1、結果分析
從 功能性上講,你們都差不了太多,github 的功能是最全面的,CSDN 和 gitcafe 的功能稍微欠缺一些。從性能上來說 Coding.net 具備明顯的優點,有可能跟 Coding 是用 Java本身開發的有關。據我瞭解,CSDN 和 git@osc 是用 gitlab 搭的,Ruby 平臺,gitcafe,github 是用 Ruby 本身開發的。我感受拋開牆的因素,github 的整體數據應該不會比 Coding 差。無心挑起語言之爭,只是對這裏的性能差別的一個猜想,也有多是算法優化不一樣,跟語言平臺無關。從前端代碼來看 Coding 和 github 都大量採用了 Ajax,對速度和體驗也有幫助。
那麼,問題來了,代碼託管哪家強?