團(tuán)隊合作-創(chuàng)建分支/解決沖突篇(八)

2019-02-27 11:42 更新

這個東西就像是SVN一樣,團(tuán)隊操作。

這篇教程需要懂得SVN原理操作,才可以跟我繼續(xù)學(xué)下去。

分支在實際中有什么用呢?假設(shè)你準(zhǔn)備開發(fā)一個新功能,但是需要兩周才能完成,第一周你寫了50%的代碼,如果立刻提交,由于代碼還沒寫完,不完整的代碼庫會導(dǎo)致別人不能干活了。

如果等代碼全部寫完再一次提交,又存在丟失每天進(jìn)度的巨大風(fēng)險?,F(xiàn)在有了分支,就不用怕了。你創(chuàng)建了一個屬于你自己的分支,別人看不到,還繼續(xù)在原來的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到開發(fā)完畢后,再一次性合并到原來的分支上,這樣,既安全,又不影響別人工作。

熟統(tǒng)來說:1個人擁有一個分支,而另外一個人也擁有一個分支,兩個人工作流程不一樣。

開始實戰(zhàn) 首先,我們創(chuàng)建dev分支,然后切換到dev分支:

git checkout -b devA

-b是創(chuàng)建并且切換到devA分支上

開始工作

并且提交 和 切換到temp另外一個分支上去

這時候,你再打開 ’老司機的~~~' .txt文件,發(fā)現(xiàn)是這樣子的。

此時應(yīng)該此處比較好玩一點了。 因為你工作的分支是兩碼回事,他工作他的,我工作我的,互不相干!

合并分支

在上面我們說了,每個人工作他自己的事情,但是始終重要以一個文件來作為最終文件,而這個’最終文件’ 指的就是 合并分支 (主分支Master) , 最上面那張圖可以作為代表作(我自己編寫的~)

我們繼續(xù)往下敲代碼,你會發(fā)現(xiàn),你依然存留在temp分支上(并且那個.txt文件我已經(jīng)改過了),這下兩個文件都有著不同的內(nèi)容,來看如下:

這時候需要把兩個分支合并到我們的Master分支

git merge dev

Oh MY GOD! 重點來了(雖說講了這么多),這種原因就是沖突原因(Git無法執(zhí)行“快速合并”)

趕緊解決方法: 看到最底下的no changes.....了么? 這就是git告訴我們要自己(A技術(shù),B技術(shù),C技術(shù)三個人自己去協(xié)商好,再合并修改再上傳上去)

這種原因的存在一般是:合并別人的東西過來,肯定沖突阿(因為跟你本地不一樣),這時候就得需要去把你的隊友拉過來,一起合并,然后再提交你的東西,如下圖: 以上你如果和豬隊友結(jié)合之后,再重新指定分支到當(dāng)前分支

git checkout master   
git merge temp

git命令 最終文件:

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號