一、閱讀提醒
1.本文章適用于已經(jīng)對(duì)git有一定的了解,即知道git是干什么的夭苗。(也要知道Android Studio是干啥的......)
2.本文章結(jié)合本人實(shí)際開發(fā)的經(jīng)驗(yàn)以及圖解在進(jìn)行講解(會(huì)涵蓋一些基本的git操作)
二信卡、寫作原因
1.在如今的Android開發(fā)過程中,一般的公司都會(huì)選擇git作為版本控制工具题造,以此來進(jìn)行團(tuán)隊(duì)協(xié)作開發(fā)傍菇。
像SVN這種集中式代碼控制工具已經(jīng)漸漸的退出了舞臺(tái)。(二者的區(qū)別請(qǐng)自行百度)
2.git操作也是現(xiàn)今考察一個(gè)程序員能力的因素界赔,如果能夠熟練掌握git的操作丢习,那么在實(shí)際項(xiàng)目開發(fā)過程中,
遇到一些代碼沖突淮悼,分支開發(fā)等問題將能夠做到應(yīng)對(duì)自如咐低。
三、Android Studio關(guān)聯(lián)Git
1.首先袜腥,git是一個(gè)軟件工具见擦,因此需要我們先自行進(jìn)行下載安裝。同樣羹令,Android Studio也是一樣鲤屡。
當(dāng)兩者都已經(jīng)安裝完成后,就可以開始Android Studio與Git的協(xié)作之旅了特恬。-
2.打開Android Studio执俩,進(jìn)入setting界面,與本地的git進(jìn)行關(guān)聯(lián)癌刽。如下所示三部曲:
3.在本地選擇一個(gè)合適的文件夾,將這個(gè)文件夾起一個(gè)你愛聽的名字(我通常習(xí)慣以我開發(fā)的項(xiàng)目的名字命名)役首。
然后進(jìn)入這個(gè)文件夾,單擊鼠標(biāo)右鍵显拜。然后點(diǎn)擊Git Bash Here啟動(dòng)git客戶端衡奥。如圖所示:
- 4.啟動(dòng)git后,首先要進(jìn)行g(shù)it的初始化操作远荠,輸入如下操作:
git init
- 5.初始化后矮固,首先我們需要將我們的工程克隆(拷貝)到我們本地,輸入以下操作:
git clone 你們項(xiàng)目的托管地址(我下圖演示的在githup上面clone項(xiàng)目)
- 6.然后會(huì)提示你輸入你的賬號(hào)密碼來確定你有clone代碼的權(quán)限譬淳。一切正確后就會(huì)成功的將代碼clone到本地档址。這三步的過程圖示如下:
- 7.當(dāng)項(xiàng)目拷貝成功后,我們就可以通過Android Studio打開這個(gè)工程邻梆。啟動(dòng)Android Studio守伸,點(diǎn)擊Open existing Android Studio Project來打開剛剛拷貝的工程。接下來浦妄,我就要開始寫和標(biāo)題有關(guān)的內(nèi)容了尼摹。為什么叫Android Studio上的git操作呢?因?yàn)锳ndroid Studio真的是一個(gè)十分牛逼的開發(fā)工具见芹,在它的terminal終端可以輸入git命令來進(jìn)行代碼的拉取,提交等操作蠢涝。(說句題外話玄呛,可能大部分人不是用我的這種方式進(jìn)行代碼的拉取和提交等操作,都習(xí)慣在操作時(shí)使用git客戶端和二。我們項(xiàng)目組五個(gè)人徘铝,四個(gè)人就是用git客戶端,只有我直接在Android Studio上操作惯吕,但我真覺著這樣挺方便的庭砍,因?yàn)椴挥迷偬匾忾_啟客戶端了,哈哈哈哈)
四混埠、常用的Git操作
1.查看本地分支:
git branch
2.新建本地分支并切換到新建分支:
git checkout -b 新分支名(是兩步操作的組合怠缸,即git branch 新分支 和 git checkout 新分支)
創(chuàng)建完成后,通過上述git branch操作钳宪,即可查看到新建的分支揭北。
3.本地分支的刪除:
git branch -D 刪除的分支名
4.查看遠(yuǎn)程庫:
git remote
5.添加遠(yuǎn)程庫:
git remote add 遠(yuǎn)程庫名(自己命名) 遠(yuǎn)程庫的托管地址
添加完成后,即可通過git remote操作查看到剛剛添加的遠(yuǎn)程庫吏颖。
6.代碼的拉壬μ濉:
git pull origin(遠(yuǎn)程庫) develop(遠(yuǎn)程分支):develop(本地分支)
這里說明一下,遠(yuǎn)程庫半醉,遠(yuǎn)程分支疚俱,以及本地分支的名字都可以自己命名,但習(xí)慣上一般把遠(yuǎn)程分支的名字和本地分支的名字命名一樣缩多,方便弄清各個(gè)分支呆奕。
7.代碼的提交:
首先,git關(guān)聯(lián)的項(xiàng)目衬吆,當(dāng)我們做了修改之后梁钾,文件的顏色會(huì)變成藍(lán)色(如果是新創(chuàng)建的則為綠色,需要我們?cè)趧?chuàng)建之后逊抡,在文件上右鍵點(diǎn)擊git -->add)姆泻。當(dāng)我們準(zhǔn)備提交后,點(diǎn)擊Android Studio頂部的綠色的箭頭向上的VCS按鈕進(jìn)行代碼的提交冒嫡。點(diǎn)擊后拇勃,所有修改的文件以及新創(chuàng)建的文件都會(huì)顯示出來。然后選中我們想要提交的文件在前面勾選上孝凌,在下面輸入此次提交的一些備注方咆,比如,此次做了什么改動(dòng)胎许。然后點(diǎn)擊commit按鈕峻呛。操作如下:
8.將提交的代碼推到遠(yuǎn)程庫:
git push origin(遠(yuǎn)程庫) develop(本地分支):develop(遠(yuǎn)程分支)
這里的分支命名和拉取代碼操作講述的命名原理一樣,同時(shí)辜窑,在代碼的pull和push過程钩述,需要輸入用戶名和密碼進(jìn)行驗(yàn)證(這里我承認(rèn)比較麻煩,但是對(duì)于記性不好的人來說就當(dāng)牢記自己密碼了穆碎,哈哈哈哈)
9.刪除遠(yuǎn)程分支:
前面我們講到了刪除本地分支的方法牙勘,這里刪除遠(yuǎn)程分支的方法略有不同,采用間接的方式所禀,即:
git push origin :develop
可以理解成方面,推了一個(gè)空的分支到遠(yuǎn)程分支,其實(shí)就相當(dāng)于刪除了對(duì)應(yīng)的遠(yuǎn)程分支色徘。
10.代碼的緩存:
往往在我們的開發(fā)過程中恭金,由于多人寫作,很有可能你正在修改的文件已經(jīng)被別人修改了褂策,這樣的話如果你直接拉取代碼的話横腿,很容易造成代碼的沖突,為防止這樣的問題出來斤寂,我們應(yīng)該在每次提交代碼之前耿焊,先拉取最新的代碼。這里就需要先將本地修改的文件進(jìn)行緩存遍搞,緩存之后進(jìn)行代碼的拉取罗侯。這里緩存的方式有兩種。
1.git stash // 直接不命名溪猿,用于拉完代碼立即還原的緩存
2.git stash save 緩存名(自己命名) // 在緩存時(shí)指定名字方便還原時(shí)找到
在代碼拉取成功后钩杰,再將剛剛緩存的文件還原回來。這里也有兩種方法诊县。
1.git stash pop // 直接將最頂部的緩存應(yīng)用
2.git stash apply 緩存名 // 還原指定名字的緩存
查看緩存:
git stash list
11.查看歷史版本號(hào):
git log --oneline -10(這個(gè)數(shù)量自己指定)
12.版本回退:
在上一步操作中我們可以查看到歷史的版本號(hào)榜苫,對(duì)應(yīng)的每一步提交前面都有一個(gè)唯一的標(biāo)識(shí),當(dāng)我們想回退到之前的某一版本時(shí)翎冲,我們只需輸入以下操作:
git reset --hard 版本號(hào)
13.分支的合并:
平時(shí)開發(fā)中垂睬,我們肯定會(huì)建立相應(yīng)的開發(fā)分支進(jìn)行開發(fā),一般不會(huì)在主分支上直接開發(fā)抗悍,在開發(fā)分支上開發(fā)完成后驹饺,在將新分支上開發(fā)的內(nèi)容合并到主分支上。這時(shí)缴渊,操作如下:
1.首先保證我們已經(jīng)切換回主分支赏壹,比如主分支是origin:git checkout origin
2.接下來合并開發(fā)分支:git merge develop(開發(fā)分支名)
3.然后刪除開發(fā)分支:git branch -D develop // 這一步隨便,不刪除也行