你真的了解git的分支管理跟其他概念嗎?
現(xiàn)在前端要學(xué)的只是太多了,你是不是有時(shí)會(huì)有這個(gè)想法,如果我有兩個(gè)大腦。一個(gè)學(xué)Vue,一個(gè)學(xué)React,然后到最后把兩個(gè)大腦學(xué)的知識(shí)再合并在一起,這樣就能省時(shí)間了。
哈哈,這個(gè)好像不能實(shí)現(xiàn)。現(xiàn)實(shí)點(diǎn)吧!年輕人。那么我們剛才那個(gè)想法就是分支的原理。
你創(chuàng)建了一個(gè)屬于你自己的分支,別人看不到,還繼續(xù)在原來的分支上正常工作,而你在自己的分支上繼續(xù)敲代碼,想提交就提交,直到開發(fā)完畢后,再一次性合并到原來的分支上,這樣,既安全,又不影響別人工作。
說了這么多,就是說說分支的重要性。那么我們來講下git的分支管理。
一、分支管理
1、分支管理的幾個(gè)常用命令
查看分支:`git branch`
創(chuàng)建分支:`git branch <name>`
切換分支:`git checkout <name>或者git switch <name>`
創(chuàng)建+切換分支:`git checkout -b <name>`或者`git switch -c <name>`
合并某分支到當(dāng)前分支:`git merge <name>`
刪除分支:`git branch -d <name>`
2、分支管理策略
在實(shí)際開發(fā)中,我們應(yīng)該按照幾個(gè)基本原則進(jìn)行分支管理:
首先,master分支應(yīng)該是非常穩(wěn)定的,也就是僅用來發(fā)布新版本,平時(shí)不能在上面干活;那在哪干活呢?干活都在dev分支上,也就是說,dev分支是不穩(wěn)定的,到某個(gè)時(shí)候,比如1.0版本發(fā)布時(shí),再把dev分支合并到master上,在master分支發(fā)布1.0版本;你和你的小伙伴們每個(gè)人都在dev分支上干活,每個(gè)人都有自己的分支,時(shí)不時(shí)地往dev分支上合并就可以了。
3、多人協(xié)作
首先,可以試圖用git push origin <branch-name>推送自己的修改;
如果推送失敗,則因?yàn)檫h(yuǎn)程分支比你的本地更新,需要先用git pull試圖合并;
如果合并有沖突,則解決沖突,并在本地提交;
沒有沖突或者解決掉沖突后,再用git push origin <branch-name>推送就能成功!如果git pull提示no tracking information,則說明本地分支和遠(yuǎn)程分支的鏈接關(guān)系沒有創(chuàng)建,用命令git branch --set-upstream-to <branch-name>origin/<branch-name>。
二、其他git操作
抓取項(xiàng)目
git clone 'git項(xiàng)目地址'
提交文件
git add env.txt
git commit -m "add env"
拉取項(xiàng)目
git pull
推送項(xiàng)目
git push
三、git的一些重要概念
1、工作區(qū)、版本庫、暫存區(qū)是什么?
工作區(qū):就是你在電腦里能看到的目錄。
版本庫:工作區(qū)有一個(gè)隱藏目錄.git,這個(gè)不算工作區(qū),而是Git的版本庫。
暫存區(qū):Git的版本庫里存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區(qū)。
2、文件往Git版本庫里添加的時(shí)候,是分兩步執(zhí)行的:
第一步是用·git add把文件添加進(jìn)去,實(shí)際上就是把文件修改添加到暫存區(qū);
第二步是用git commit提交更改,實(shí)際上就是把暫存區(qū)的所有內(nèi)容提交到當(dāng)前分支。
因?yàn)槲覀儎?chuàng)建Git版本庫時(shí),Git自動(dòng)為我們創(chuàng)建了唯一一個(gè)master分支,所以,現(xiàn)在,git commit就是往master分支上提交更改。
你可以簡單理解為,需要提交的文件修改通通放到暫存區(qū),然后,一次性提交暫存區(qū)的所有修改。
作者:Vam的金豆之路
主要領(lǐng)域:前端開發(fā)
我的微信:maomin9761
微信公眾號(hào):前端歷劫之路