Git 簡(jiǎn)介
Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)(沒(méi)有之一)几缭。
Git學(xué)習(xí)是一個(gè)程序員必備的技能哈街,現(xiàn)在Git的操作命令很給力突勇,而且能跟github關(guān)聯(lián)管理代碼庫(kù). 詳細(xì)資料請(qǐng)觀看廖雪峰Git教程
本地代碼庫(kù)的命令 需要先進(jìn)入到你需要提交的文件夾里面
創(chuàng)建本地git倉(cāng)庫(kù) git init
添加你所需要的文件 git add 文件名
提交你的添加后的內(nèi)容 git commit -m "描述"(描述可寫可不寫奸汇,最好寫,方便以后查看)
查看現(xiàn)在本地庫(kù)的狀態(tài) git status (可以查看現(xiàn)在本地庫(kù)里面的文件狀態(tài))
本地庫(kù)與遠(yuǎn)程倉(cāng)庫(kù)的關(guān)聯(lián)
先要在遠(yuǎn)程倉(cāng)庫(kù)里面添加一個(gè)倉(cāng)庫(kù)
給遠(yuǎn)程倉(cāng)庫(kù)添加一個(gè)分支 git remote add origin git@github.com:帳號(hào)名/倉(cāng)庫(kù)名.git
本地提交代碼到遠(yuǎn)程倉(cāng)庫(kù) git push origin master
搞定
克隆遠(yuǎn)程倉(cāng)庫(kù)的代碼塊 git clone git@github.com:賬號(hào)名字/倉(cāng)庫(kù)名.git
分支管理(重重點(diǎn))
創(chuàng)建一個(gè)分支并且把指針切換到剛剛創(chuàng)建的分支 git checkout -b 分支名稱
切換分支 ** git checkout 分支名**
創(chuàng)建分支 git branch -b 分支名稱
刪除分支 git branch -d 分支名稱
合并分支到當(dāng)前指針?biāo)傅姆种? git merge 分支名 (這是fast forward的方式秀姐,合并后看不出是誰(shuí)修改了什么慈迈。git merge --no-ff -m 描述 分支名) 這樣子可以看書是誰(shuí)修改了什么
查看分支(有雪花的分支則是當(dāng)前指針?biāo)傅姆种? git branch
分支保存狀態(tài)
當(dāng)你在你的分支工作時(shí)候現(xiàn)在master分支上面有一個(gè)bug需要更改,需要切換到master的分支上面解決bug后再回來(lái)工作省有,此時(shí)就要用到git stash保存功能
保存 git stash
保存的工作線程(查看狀態(tài)) git stash list
恢復(fù) git stash apply 恢復(fù)后痒留,stash內(nèi)容并不刪除,你需要用git stash drop來(lái)刪除蠢沿;
恢復(fù)加刪除stash內(nèi)容 git stash pop
多人協(xié)作的問(wèn)題
每個(gè)人都從master上面clone下來(lái)主支的代碼伸头,然后創(chuàng)建一個(gè)分支,增加一些功能舷蟀,然后提交恤磷,合并,最后push野宜。
但是如果在push的時(shí)候出現(xiàn)問(wèn)題碗殷,就是有人對(duì)同樣的內(nèi)容做了調(diào)整,此時(shí)服務(wù)器上面的代碼比你本地庫(kù)的代碼更加新速缨,此時(shí)需要pull下來(lái)锌妻,然后合并,解決沖突旬牲,然后再push仿粹。