摘要:本章內(nèi)容將從以下幾個(gè)部分進(jìn)行介紹:
一. 基于Git的代碼托管平臺(tái)伦籍;
二. 創(chuàng)建項(xiàng)目以及配置SSH keys等蓝晒;
三. 使用Git平臺(tái)腮出。
一.基于Git的代碼托管平臺(tái)
1.Github
GitHub 是一個(gè)面向開(kāi)源及私有軟件項(xiàng)目的托管平臺(tái),由 Git (著名的 Git 版本控制軟件) 和 Hub( 「 中心 」 的意思) 兩個(gè)詞合成芝薇。
Github使用人群龐大胚嘲,活躍度高,但不支持私有化項(xiàng)目洛二。
GitHub地址:https://github.com/
2.Gitlab
由 Git (著名的 Git 版本控制軟件) 和 Lab( laboratory 的縮寫(xiě)馋劈,是「 實(shí)驗(yàn)室 」 的意思) 兩個(gè)詞合成。
能夠創(chuàng)建免費(fèi)的私有倉(cāng)庫(kù)灭红,但搭建相對(duì)復(fù)雜侣滩。
Gitlab網(wǎng)址:https://gitlab.com
3.碼云
國(guó)內(nèi)最大的開(kāi)源社區(qū) OSChina 的代碼托管平臺(tái)。
提供團(tuán)隊(duì)協(xié)作開(kāi)發(fā)变擒【椋可創(chuàng)建 1000 個(gè)項(xiàng)目,不限私有或公有娇斑。
碼云網(wǎng)址:https://git.oschina.net/
4.碼市
CODING (碼市)是國(guó)內(nèi)首個(gè)一站式云端軟件服務(wù)平臺(tái)策添。
云端軟件開(kāi)發(fā)協(xié)作平臺(tái),目前已累積 30 萬(wàn)開(kāi)發(fā)者毫缆,50 萬(wàn)個(gè)項(xiàng)目唯竹。
碼市網(wǎng)址:https://coding.net/
5.CSDN Code
作為國(guó)內(nèi)最大的編程社區(qū),CSDN 的代碼托管平臺(tái)自然不會(huì)差苦丁。
CSDN 的代碼托管平臺(tái)一大特色是和CSDN 的博客實(shí)現(xiàn)連接浸颓,在博客中可以方便地引用平臺(tái)上的代碼,在博客中寫(xiě)入的代碼也可以自動(dòng)保存到平臺(tái)上旺拉。
CSDN Code網(wǎng)址:https://code.csdn.net
總結(jié):
對(duì)于程序員來(lái)說(shuō)孝鹊,會(huì)使用代碼托管平臺(tái)以及版本控制軟件馅精,是非常必要的技能风秤,也十分實(shí)用座菠,可以有效地管理代碼,查看以前修改記錄等等沉桌。尤其是像 Github 這樣可以作為程序員簡(jiǎn)歷的一部分的「極客社交平臺(tái)」谢鹊。多參與優(yōu)秀開(kāi)源項(xiàng)目的 Bug 修改、功能添加留凭;自己也可以發(fā)布自己的代碼倉(cāng)庫(kù)佃扼,并做好維護(hù),讓別人來(lái)參與蔼夜。這是打開(kāi)業(yè)界知名度的好方法松嘶。使用代碼托管平臺(tái)可以鍛煉我們使用版本控制軟件(如 Git,Mercurial挎扰,等等)的能力翠订。
對(duì)于學(xué)校、企業(yè)的團(tuán)隊(duì)來(lái)說(shuō)遵倦,使用一個(gè)代碼托管平臺(tái)背后的軟件非常重要尽超。目前國(guó)內(nèi)的代碼托管倉(cāng)庫(kù)也比較完善了,但是在私有項(xiàng)目上面還有一些限制梧躺,例如私有個(gè)數(shù)似谁,私有項(xiàng)目空間上限等等。
這里我們將推薦使用Gitlab搭建代碼倉(cāng)庫(kù)掠哥,后續(xù)為使用教程9ぁ(非搭建教程)為組內(nèi)同學(xué)入手提供幫助!~
二.創(chuàng)建項(xiàng)目
1.注冊(cè)Gitlab網(wǎng)站
https://about.gitlab.com/
2.創(chuàng)建項(xiàng)目
Gitlab具體使用教程可參考后附博客续搀;
????登錄后點(diǎn)擊右上角的加號(hào)(New project)塞琼。
????????Project path:如果你屬于group的話可以選group名字,這樣項(xiàng)目就會(huì)放在對(duì)應(yīng)group下禁舷,一般團(tuán)隊(duì)項(xiàng)目比較好用彪杉。
????????Project name:你的項(xiàng)目名字
????????Import project from:可以從多個(gè)github、bitbucket等主流托管平臺(tái)導(dǎo)入項(xiàng)目牵咙。
????????Project description:項(xiàng)目描述派近,可選
????????Visibility Level:項(xiàng)目可見(jiàn)級(jí)別
????????Private:私有項(xiàng)目,需要授權(quán)才能訪問(wèn)洁桌,適合個(gè)人渴丸、團(tuán)隊(duì)開(kāi)發(fā)。
????????Internal:內(nèi)部項(xiàng)目另凌,注意只要登錄賬號(hào)就能訪問(wèn)谱轨,適合開(kāi)源貢獻(xiàn)代碼。
????????Public:公開(kāi)項(xiàng)目途茫,不用登錄就能訪問(wèn)碟嘴,適合分享項(xiàng)目。
點(diǎn)擊create囊卜,創(chuàng)建項(xiàng)目娜扇,進(jìn)入空項(xiàng)目,會(huì)出現(xiàn)初始化步驟栅组,可以用ssh和https方式來(lái)上傳代碼雀瓢,推薦ssh,比較安全玉掸。
更多Gitlab使用教程參考:
https://blog.csdn.net/Adelly/article/details/79099772
3.配置SSH
????????3.1)檢查SSHkeys是否存在
右鍵Git Bash刃麸,輸入下面的命令
ssh-keygen -t rsa -C "your_email@example.com"
ssh-keygen -t rsa -C "your_email@example.com"
# Creates a new ssh key using the provided email
Generating public/private rsa key pair.
Enter file in which to save the key (/your_home_path/.ssh/id_rsa):
????????3.2)生成新的SSH keys
(1)生成public/private rsa key pair,在命令行中輸入
ssh-keygen -t rsa -C "your_email@example.com"
默認(rèn)會(huì)在相應(yīng)路徑下(/your_home_path)生成id_rsa和id_rsa.pub兩個(gè)文件司浪。
(2)輸入passphrase(本步驟可以跳過(guò))
設(shè)置passphrase后泊业,進(jìn)行版本控制時(shí)把沼,每次與GitHub通信都會(huì)要求輸入passphrase,以避免某些“失誤”
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
sample result:
Your identification has been saved in /your_home_path/.ssh/id_rsa.
Your public key has been saved in /your_home_path/.ssh/id_rsa.pub.
The key fingerprint is:
#01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
(3)將新生成的key添加到ssh-agent中:
# start the ssh-agent in the background
eval "$(ssh-agent -s)"
Agent pid 59566
ssh-add ~/.ssh/id_rsa
????3.3)?提取SSH public key
用自己喜歡的文本編輯器打開(kāi)id_rsa.pub文件吁伺,里面的信息即為SSH key饮睬,將這些信息復(fù)制到GitHub的Add SSH key頁(yè)面即可
不同的操作系統(tǒng),均有一些命令篮奄,直接將SSH key從文件拷貝到粘貼板中捆愁,如下:
mac
pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
windows
clip < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
linux
sudo apt-get install xclip
# Downloads and installs xclip. If you don't have `apt-get`, you might need to use another installer (like `yum`)
xclip -sel clip < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
????3.4)將ssh key添加到Gitlab中
Gitlab中點(diǎn)擊右側(cè)頭像,下拉菜單里選settings窟却,在頂部的tab里點(diǎn)擊SSH Keys.
三.使用Git平臺(tái)
配置完上述基礎(chǔ)流程后昼丑,即可使用Git工具進(jìn)行代碼倉(cāng)庫(kù)管理,可以使用命令行直接操作
常見(jiàn)Git命令參考:
https://blog.csdn.net/tomatozaitian/article/details/73515849
https://www.cnblogs.com/my--sunshine/p/7093412.html
這里夸赫,比較推薦Git圖形化工具菩帝,比較經(jīng)典的有:tortoiseGit、sourcetree憔足、GitKraken胁附、Fork、smartgit滓彰、GitExtensions等...
這里強(qiáng)烈推薦SourceTree控妻,無(wú)論是Mac還是Win系統(tǒng),均非常好用揭绑!
更多SourceTree使用教程參考:
https://blog.csdn.net/zcube/article/details/47841175
https://blog.csdn.net/ljj2312/article/details/77340561
https://www.cnblogs.com/fps2tao/p/7825742.html
https://blog.csdn.net/u012230055/article/details/64125268
PS:SourceTree跳過(guò)注冊(cè)的方法:
https://www.cnblogs.com/lucio110/p/8192792.html