一種分支合并方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001 ]本申請(qǐng)涉及軟件開發(fā)技術(shù)領(lǐng)域,更具體地說(shuō),涉及一種分支合并方法及裝置。
【背景技術(shù)】
[0002]SVN(Subvers1n的簡(jiǎn)稱)是一個(gè)開放源代碼的版本控制系統(tǒng)。開發(fā)者一般使用它來(lái)進(jìn)行代碼管理。分支是SVN服務(wù)器端中央版本庫(kù)下的一個(gè)個(gè)文件目錄。
[0003]在軟件開發(fā)過(guò)程中,經(jīng)常需要多人協(xié)作的對(duì)軟件進(jìn)行開發(fā),很多團(tuán)隊(duì)不約而同的選擇了SVN來(lái)進(jìn)行代碼管理。每個(gè)人都可以將本地編寫好的代碼提交到中央版本庫(kù)中,中央版本庫(kù)會(huì)通過(guò)增加版本的操作,保留每個(gè)版本代碼的差異,方便開發(fā)人員對(duì)代碼進(jìn)行分析和回滾。通常,開發(fā)團(tuán)隊(duì)會(huì)根據(jù)產(chǎn)品需求,創(chuàng)建多個(gè)分支由不同人來(lái)開發(fā),最后將將開發(fā)分支合并到主干,或者將兩個(gè)開發(fā)分支進(jìn)行合并。
[0004]現(xiàn)有技術(shù)在進(jìn)行分支合并時(shí)需要用戶指定所要合并的分支,并通過(guò)輸入大量的SVN操作命令來(lái)實(shí)現(xiàn)分支合并,合并復(fù)雜度高,工作量大。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本申請(qǐng)?zhí)峁┝艘环N分支合并方法及裝置,用于解決現(xiàn)有分支合并所存在的合并復(fù)雜度高,工作量大的問(wèn)題。
[0006]為了實(shí)現(xiàn)上述目的,現(xiàn)提出的方案如下:
[0007]—種分支合并方法,包括:
[0008]對(duì)版本控制系統(tǒng)SVN服務(wù)器端的中央版本庫(kù)進(jìn)行分支檢測(cè),用以判斷中央版本庫(kù)中是否上傳有新版本的分支;
[0009]在確定所述中央版本庫(kù)中上傳有新版本的分支時(shí),調(diào)用預(yù)置的分支合并函數(shù);
[0010]利用所述分支合并函數(shù),對(duì)所述新版本的分支和預(yù)先指定的分支執(zhí)行合并操作。
[0011]優(yōu)選地,所述在確定所述中央版本庫(kù)中上傳有新版本的分支時(shí),調(diào)用預(yù)置的分支合并函數(shù),包括:
[0012]判斷所述中央版本庫(kù)中上傳的新版本的分支的個(gè)數(shù)是否達(dá)到預(yù)置個(gè)數(shù),若是,則調(diào)用預(yù)置的分支合并函數(shù)。
[0013]優(yōu)選地,還包括:
[0014]接收用戶指定的若干個(gè)待合并分支的分支標(biāo)識(shí),所述分支標(biāo)識(shí)用于標(biāo)記各待合并分支在所述中央版本庫(kù)中的存儲(chǔ)位置;
[0015]在所述中央版本庫(kù)中查找與各個(gè)所述分支標(biāo)識(shí)對(duì)應(yīng)的待合并分支;
[0016]讀取所述預(yù)置的分支合并函數(shù),利用所述分支合并函數(shù)對(duì)所述待合并分支執(zhí)行合并操作。
[0017]優(yōu)選地,還包括:
[0018]在檢測(cè)到合并失敗時(shí),將合并失敗的分支回滾到合并前的狀態(tài)。
[0019]優(yōu)選地,還包括:
[0020]將合并失敗的消息通知給指定開發(fā)者。
[0021]—種分支合并裝置,包括:
[0022]分支檢測(cè)單元,用于對(duì)版本控制系統(tǒng)SVN服務(wù)器端的中央版本庫(kù)進(jìn)行分支檢測(cè),用以判斷中央版本庫(kù)中是否上傳有新版本的分支;
[0023]函數(shù)調(diào)用單元,用于在確定所述中央版本庫(kù)中上傳有新版本的分支時(shí),調(diào)用預(yù)置的分支合并函數(shù);
[0024]第一合并操作單元,用于利用所述分支合并函數(shù),對(duì)所述新版本的分支和預(yù)先指定的分支執(zhí)行合并操作。
[0025]優(yōu)選地,所述函數(shù)調(diào)用單元包括:
[0026]第一函數(shù)調(diào)用子單元,用于判斷所述中央版本庫(kù)中上傳的新版本的分支的個(gè)數(shù)是否達(dá)到預(yù)置個(gè)數(shù),若是,則調(diào)用預(yù)置的分支合并函數(shù)。
[0027]優(yōu)選地,還包括:
[0028]用戶數(shù)據(jù)接收單元,用于接收用戶指定的若干個(gè)待合并分支的分支標(biāo)識(shí),所述分支標(biāo)識(shí)用于標(biāo)記各待合并分支在所述中央版本庫(kù)中的存儲(chǔ)位置;
[0029]分支查找單元,用于在所述中央版本庫(kù)中查找與各個(gè)所述分支標(biāo)識(shí)對(duì)應(yīng)的待合并分支;
[0030]第二合并操作單元,用于讀取所述預(yù)置的分支合并函數(shù),利用所述分支合并函數(shù)對(duì)所述待合并分支執(zhí)行合并操作。
[0031]優(yōu)選地,還包括:
[0032]分支回滾單元,用于在檢測(cè)到合并失敗時(shí),將合并失敗的分支回滾到合并前的狀
??τ ο
[0033]優(yōu)選地,還包括:
[0034]消息通知單元,用于將合并失敗的消息通知給指定開發(fā)者。
[0035]從上述的技術(shù)方案可以看出,本申請(qǐng)實(shí)施例提供的分支合并方法,通過(guò)對(duì)版本控制系統(tǒng)SVN服務(wù)器端的中央版本庫(kù)進(jìn)行分支檢測(cè),從而判斷中央版本庫(kù)中是否上傳有新版本的分支,在確定所述中央版本庫(kù)中上傳有新版本的分支時(shí),調(diào)用預(yù)置的分支合并函數(shù),利用所述分支合并函數(shù),對(duì)所述新版本的分支和預(yù)先指定的分支執(zhí)行合并操作。本申請(qǐng)?jiān)谶M(jìn)行分支合并時(shí)不需要用戶指定待合并分支,減少了用戶工作量,并且預(yù)先將分支合并邏輯封裝成函數(shù),在分支合并時(shí)直接調(diào)用分支合并函數(shù)即可實(shí)現(xiàn)自動(dòng)化合并,無(wú)需用戶手動(dòng)輸入SVN操作命令,簡(jiǎn)化了分支合并過(guò)程,也進(jìn)一步減少用戶工作量。
【附圖說(shuō)明】
[0036]為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0037]圖1為本申請(qǐng)實(shí)施例公開的一種分支合并方法流程圖;
[0038]圖2為本申請(qǐng)實(shí)施例公開的另一種分支合并方法流程圖;
[0039]圖3為本申請(qǐng)實(shí)施例公開的又一種分支合并方法流程圖;
[0040]圖4為本申請(qǐng)實(shí)施例公開的又一種分支合并方法流程圖;
[0041 ]圖5為本申請(qǐng)實(shí)施例公開的一種分支合并裝置結(jié)構(gòu)示意圖;
[0042]圖6為本申請(qǐng)實(shí)施例公開的一種函數(shù)調(diào)用單元結(jié)構(gòu)示意圖;
[0043]圖7為本申請(qǐng)實(shí)施例公開的另一種分支合并裝置結(jié)構(gòu)示意圖;
[0044]圖8為本申請(qǐng)實(shí)施例公開的又一種分支合并裝置結(jié)構(gòu)示意圖;
[0045]圖9為本申請(qǐng)實(shí)施例公開的又一種分支合并裝置結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0046]下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
[0047]本申請(qǐng)?zhí)峁┝艘环N分支合并方案,該方案可以應(yīng)用于Windows操作系統(tǒng)和Linux操作系統(tǒng)下,解決了現(xiàn)有分支合并操作只能夠在Windows操作系統(tǒng)下執(zhí)行的問(wèn)題,并且通過(guò)對(duì)分支合并方式進(jìn)行優(yōu)化改進(jìn),解決了現(xiàn)有分支合并的一些缺點(diǎn),有關(guān)本申請(qǐng)分支合并方案的詳細(xì)介紹如下。
[0048]參見圖1,圖1為本申請(qǐng)實(shí)施例公開的一種分支合并方法流程圖。
[0049]如圖1所示,該方法包括:
[0050]步驟S100、對(duì)版本控制系統(tǒng)SVN服務(wù)器端的中央版本庫(kù)進(jìn)行分支檢測(cè),用以判斷中央版本庫(kù)中是否上傳有新版本的分支;
[0051]具體地,用戶在終端本地編寫好分支代碼后會(huì)將分支上傳到SVN的中央版本庫(kù)中,中央版本庫(kù)為新上傳的分支添加新版本號(hào)。
[0052]本步驟中,通過(guò)遍歷中央版本庫(kù),查找是否存在新版本的分支。
[0053]步驟S110、在確定所述中央版本庫(kù)中上傳有新版本的分支時(shí),調(diào)用預(yù)置的分支合并函數(shù);
[0054]具體地,本申請(qǐng)預(yù)先設(shè)計(jì)了分支合并函數(shù),也即將分支合并邏輯封裝到一個(gè)函數(shù)中。通過(guò)調(diào)用該分支合并函數(shù)即可實(shí)現(xiàn)分支自動(dòng)化合并。
[0055]可選的,分支合并函數(shù)可以預(yù)先寫入shell腳本中。
[0056]步驟S12