上面一大堆的本地倉(cāng)庫(kù)的操作,其實(shí)要社會(huì)化協(xié)作,關(guān)鍵還是提交到遠(yuǎn)程服務(wù)器上
理解了分布式版本庫(kù)的概念,這個(gè)不太難,一步步看,
這里我講述的順序,按照自己下載單位碼云上的項(xiàng)目為例,
一、獲取遠(yuǎn)程倉(cāng)庫(kù)
01、獲取遠(yuǎn)程倉(cāng)庫(kù)的URL
假設(shè)查到為,git@github.com:github-xxx/git-xxx.git,
地址由云服務(wù)器廠商定制,一般用瀏覽器打開(kāi)倉(cāng)庫(kù),并拷貝項(xiàng)目的git地址(下載壓縮包的地址類似),這個(gè)地方的地址是github指定的地址,
比如碼云的地址格式為:https://git.oschina.net/libiao0601/abc.git

其實(shí)github采用的ssh格式,

注意,本人操作的采用ssh格式,畢竟本身的公鑰是ssh
02、準(zhǔn)備本地環(huán)境
- 前面講過(guò)的【配置全局郵箱和用戶名】
- 前面的【ssh生成公鑰】
在oschina.net配置公鑰并驗(yàn)證,ssh -T git@git.oschina.net
當(dāng)終端提示welcome to Git@OSC ... 表示鏈接成功 - 為碼云代碼庫(kù)簡(jiǎn)歷本地根目錄,mkdir git_oschina,建議每個(gè)代碼供應(yīng)商單獨(dú)一個(gè)文件夾,然后初始化倉(cāng)庫(kù)(git init) ,最后記得進(jìn)入該目錄下(cd git_oschina),切記務(wù)必進(jìn)入該目錄下,否則出現(xiàn)找不到倉(cāng)庫(kù)的怪問(wèn)題
03、克隆下載遠(yuǎn)程倉(cāng)庫(kù)到本地
git clone git@git.oschina.net:項(xiàng)目名稱07/xxxxyyyyun.git
現(xiàn)在可以喝茶了,耐心等待下載完成后。
04、檢查本地倉(cāng)庫(kù)
- 查詢下載的文件夾(ls ,顯示所有目錄)
- 進(jìn)入下載的項(xiàng)目根目錄,cd 項(xiàng)目根目錄下(只要輸入前幾個(gè)字母,再Tab鍵會(huì)自動(dòng)補(bǔ)齊,舒服的技巧,不要那么傻傻一字不錯(cuò)的敲鍵盤(pán))
- 檢查本地倉(cāng)庫(kù)狀況,git status,git branch
- 檢查不同分支下的文件狀況,首先切換到主分支( git checkout master),再右鍵項(xiàng)目文件的根目錄,檢查文件總大?。辉偾袚Q到其他分支,比較兩者的大小不同,如有差異才是正常的。
二、基本代碼管理
01、建立ssh格式的遠(yuǎn)程倉(cāng)庫(kù)標(biāo)志符
git remote add origin git@github.com:github-xxx/git-xxx.git
注意origin為標(biāo)識(shí)符,以后避免到處敲又長(zhǎng)又臭的URL,舒服人性化,其實(shí)就是比較簡(jiǎn)單的標(biāo)識(shí)符
02、獲取分支代碼
- 獲取遠(yuǎn)程服務(wù)器主分支代碼,切換到本地的主分支,再獲取遠(yuǎn)程主分支代碼,命令: git pull origin master
三、新建屬于自己的分支
- 選擇需要復(fù)制的分支,建議選擇代碼較全的,或者正式發(fā)布的主分支,切換到分支,git checkout develop
- 在本地復(fù)制新建分支,git branch beta,(自動(dòng)復(fù)制develop分支的所有代碼到beta)
- 推送到遠(yuǎn)程服務(wù)器,首先切換到新建的分支(git checkout beta),再推送到遠(yuǎn)程服務(wù)器(git push origin local_branch:remote_branch,其中l(wèi)ocal_branch為beta)
- 刷新git工具,即可在本地和遠(yuǎn)程機(jī)器上,看到新建的分支。
四、使用界面工具全面管理代碼
到這里,使用命令行的方式到此可以為止,why?
可視化工具就是為了節(jié)省大家的勞動(dòng)力,而現(xiàn)成的工具不用,非得折騰命令行,
體現(xiàn)自己的高深能力,對(duì)于代碼合并,代碼拆分,代碼沖突問(wèn)題,怎么辦?
我的經(jīng)驗(yàn)是使用界面工具解決,而命令行只適合學(xué)習(xí)階段,理解底層比較適合。
01、界面操作 vs 命令行
界面上點(diǎn)擊【Pull】,獲取遠(yuǎn)程服務(wù)器代碼,圖形化界面好多的選項(xiàng)控制,真心節(jié)省大量工作量了,

工具底層自動(dòng)執(zhí)行如下命令行:

前端簡(jiǎn)單,后臺(tái)底層的復(fù)雜強(qiáng)大,看到之類,酷愛(ài)命令行的還有興趣折騰不,估計(jì)興趣大減了吧,
02、檢查本地倉(cāng)庫(kù)
- 打開(kāi)已經(jīng)安裝的SourceTree(版本1.6.11),選擇File-->Open.., 注意這里不能選錯(cuò)了目錄,E:\git_oschina\xiongyueyun,如果選錯(cuò)了,看不到當(dāng)前分支
四、其他內(nèi)容
推送至主分支(未推送的新項(xiàng)目)
首先在本地切換到主分支,
git push -u origin master
注意,-u參數(shù)表示在推送的同時(shí),將origin倉(cāng)庫(kù)的主分支設(shè)置為本地倉(cāng)庫(kù)當(dāng)前分支的上游(upstream)
很好奇,upstream,啥意義,將來(lái)運(yùn)行g(shù)it pull命令從遠(yuǎn)程倉(cāng)庫(kù)獲取內(nèi)容時(shí),本地倉(cāng)庫(kù)的這個(gè)分支就可直接從origin的主分支獲取內(nèi)容,
省去了另外添加參數(shù)的麻煩。