總結(jié)一些常用的Git指令
git倉(cāng)庫(kù)會(huì)分成三個(gè)區(qū)
工作區(qū):我們書寫代碼的地方轿衔,工作的目錄就叫工作區(qū)。
暫存區(qū):暫時(shí)存儲(chǔ)的區(qū)域睦疫,在git中害驹,代碼無(wú)法直接從工作區(qū)提交到倉(cāng)庫(kù)區(qū),而是需要先從工作區(qū)添加到暫存區(qū)蛤育,然后才能從暫存區(qū)提交到倉(cāng)庫(kù)區(qū)宛官。暫存區(qū)的目的是避免誤操作。
倉(cāng)庫(kù)區(qū):將保存在暫存區(qū)域的內(nèi)容永久轉(zhuǎn)儲(chǔ)到 Git 倉(cāng)庫(kù)中瓦糕,生成版本號(hào)底洗。生成版本號(hào)之后,就可以任何的回退到某一個(gè)具體的版本刻坊。
提交代碼
git add . // 將文件由 工作區(qū) 添加到 暫存區(qū)
git commit -m 'login功能完成' // 將文件由 暫存區(qū) 添加到 倉(cāng)庫(kù)區(qū)枷恕,生成版本號(hào)(存檔)
查看git 狀態(tài)
git status
git重置
版本回退党晋,將代碼恢復(fù)到已經(jīng)提交的某一個(gè)版本中谭胚。
git reset
合并分支錯(cuò)誤時(shí)
先讀檔,再切換
git reflog
git reset --hard 2ae0268 // 讀到的操作記錄號(hào)
切換分支
git checkout [分支名]
查看所有本地分支和遠(yuǎn)程分支
git branch -a
新建一個(gè)分支未玻,并切換到該分支
git checkout -b [分支名]
刪除本地分支
git branch -d [分支名]
克隆遠(yuǎn)程倉(cāng)庫(kù)代碼到本地
git clone [遠(yuǎn)程倉(cāng)庫(kù)地址]
將遠(yuǎn)程的代碼下載到本地
git pull 倉(cāng)庫(kù)地址 // 通常在push前灾而,需要先pull一次
提交代碼
git push 倉(cāng)庫(kù)地址 分支名 // 提交
刪除遠(yuǎn)程分支
git push origin --delete [分支名]
重新關(guān)聯(lián)遠(yuǎn)程倉(cāng)庫(kù)地址
先刪除 在添加
git remote rm origin
git remote add origin [url]
查詢遠(yuǎn)程倉(cāng)庫(kù)地址
git remote -v
合并分支
在指定的分支上(主分支或其他)操作合并
git merge 分支名
合并分支沖突時(shí)
對(duì)于同一個(gè)文件,如果有多個(gè)分支需要合并時(shí)扳剿,容易出現(xiàn)沖突旁趟。
合并分支時(shí),如果出現(xiàn)沖突庇绽,只能手動(dòng)處理锡搜,再次提交橙困,一般的作法,把自己的代碼放到?jīng)_突代碼的后面即可耕餐。
看下圖: CONFLICT
沖突的意思
這個(gè)意思是指:合并沖突了凡傅,在index.html(因?yàn)閮蓚€(gè)分支操作同一個(gè)主分支的文件)。自動(dòng)合并失敗了肠缔,讓你自己去修復(fù)沖突再提交結(jié)果夏跷。
看vscode中的提示。問(wèn)你是保存這次提交的代碼明未,還是上次提交的槽华,還是保留雙方更改。這時(shí)選擇保留雙方更改就好了趟妥。
注意:修復(fù)沖突之后記得再次提交代碼猫态, add、commit流程再走一波披摄。合并分支產(chǎn)生的沖突的問(wèn)題就解決了
以上是常用的指令懂鸵,參考鏈接
https://shfshanyue.github.io/cheat-sheets/git