??? 共同開發(fā),也叫并行作業(yè),這時我們要用到git的branch(分支)相關(guān)命令。
??? 不同分支中,可以同時進(jìn)行完全不同的作業(yè)。等該分支的作業(yè)完成之后再與master分支合并。通過靈活運用分支,可以讓多人同時高效地進(jìn)行并行開發(fā)。下面為大家介紹與分支相關(guān)的Git操作。
本地分支
git branch —— 顯示分支一覽表
git branch 命令可以將分支名列表顯示,同時可以確認(rèn)當(dāng)前所在分支。
分支左側(cè)標(biāo)有 “ * ”,這表示當(dāng)前所在的分支。
git branch -d dev —— 刪除本地分支
git branch + git checkout = git checkout -b —— 創(chuàng)建并切換到新分支
git checkout -b 命令實際上是兩條Git命令的結(jié)合.
git merge —— 合并分支
舉例說明,你現(xiàn)在在A分支上,輸入git merge B,就會把B分支合并到A分支上,合并后的結(jié)果會存儲在A分支上,整個過程對B分支沒有影響。
git log --graph —— 以圖表形式查看分支
該命令可以非常直觀地看到分支的創(chuàng)建和合并
git reset --hard & git reflog —— 回溯歷史版本,靈活創(chuàng)建分支
有時master分支更新的太急,不小心在某個歷史版本忘記了創(chuàng)建分支,想使用git reset回去卻擔(dān)心丟掉master分支進(jìn)度。git reset --hard 和 git reflog 可以幫助你解決煩惱完成操作。
本地分支與遠(yuǎn)程分支
git branch -a(--all) —— 查看本地和遠(yuǎn)程的所有分支
git push origin --delete dev —— ?刪除遠(yuǎn)程分支
git push —— 推送至master之外的其他分支
輸入格式:git push -u origin 本地分支名:要創(chuàng)建的新分支名稱
注意:本地分支名和遠(yuǎn)程新分支名可以不一樣,但中間一定要注意加":"(冒號)。
git push 命令除了將本地分支的內(nèi)容推送到遠(yuǎn)程倉庫已有分支之外也可以用來在遠(yuǎn)程倉庫中創(chuàng)建新的遠(yuǎn)程分支。
執(zhí)行后,若此名稱分支不存在,會新建一個遠(yuǎn)程分支并將當(dāng)前所在本地分支的內(nèi)容推送到該遠(yuǎn)程分支上。
git checkout -b —— 獲取遠(yuǎn)程分支
使用 git checkout -b 命令可以完成遠(yuǎn)程分支取回本地的操作。
輸入格式:git checkout -b 本地倉庫新建分支名稱 遠(yuǎn)程倉庫名稱/要取回的遠(yuǎn)程分支名稱
舉例: git checkout -b A origin/B 的執(zhí)行結(jié)果是以名為origin的遠(yuǎn)程倉庫(默認(rèn)遠(yuǎn)程倉庫)的B分支為來源,在本地倉庫中創(chuàng)建分支A。
? ? 從遠(yuǎn)程倉庫獲取遠(yuǎn)程分支,在本地倉庫中提交更改,再將該分支推送回遠(yuǎn)程倉庫,通過這一系列操作,就可以與其他開發(fā)者相互合作,共同培育該分支,實現(xiàn)某些功能。
git pull —— 獲取最新的遠(yuǎn)程倉庫分支
輸入格式: git pull 遠(yuǎn)程倉庫名稱 遠(yuǎn)程分支名稱
使用該明令時請務(wù)必保證當(dāng)前所處本地分支是和遠(yuǎn)程分支對應(yīng)的,使遠(yuǎn)程分支更新能正確拉回對應(yīng)本地分支。
另外,如果在一個團(tuán)隊中兩個人修改了同一部分的源代碼,push時就很容易發(fā)生沖突,因此當(dāng)多名開發(fā)者在同一個分支中工作時,為減少沖突發(fā)生,頻繁的pull 和 push是很有必要的。