程序發(fā)布方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及軟件開發(fā)技術(shù)領(lǐng)域,尤其是程序發(fā)布方法及裝置。
【背景技術(shù)】
[0002]在軟件開發(fā)領(lǐng)域中,開發(fā)人員開發(fā)的程序,發(fā)布后才能被用戶下載安裝。具體地,開發(fā)人員使用編程語(yǔ)言編寫程序的源文件,源文件經(jīng)過編譯后稱為目標(biāo)文件,發(fā)布目標(biāo)文件以供用戶下載安裝。
[0003]通常,軟件程序開發(fā)是個(gè)長(zhǎng)期的過程,程序在發(fā)布后,開發(fā)人員仍會(huì)不斷對(duì)程序的源文件進(jìn)行改進(jìn),以為了發(fā)布更為完善的新版本程序。這樣,開發(fā)人員的開發(fā)平臺(tái)上,便會(huì)不斷生成新的源文件。
[0004]有時(shí),用戶下載安裝的某個(gè)版本的目標(biāo)文件可能存在問題,開發(fā)人員需要查找到該目標(biāo)文件的源文件,并對(duì)查找到的源文件進(jìn)行調(diào)整。目前的程序發(fā)布方法,使得開發(fā)人員查找源文件非常不便。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本申請(qǐng)?zhí)峁┝艘环N程序發(fā)布方法,用以解決現(xiàn)有的程序發(fā)布方法并不方便用戶查找程序的源文件的技術(shù)問題。另外,本申請(qǐng)還提供了一種程序發(fā)布裝置,用以保證所述方法在實(shí)際中的應(yīng)用及實(shí)現(xiàn)。
[0006]為實(shí)現(xiàn)所述目的,本申請(qǐng)?zhí)峁┑募夹g(shù)方案如下:
[0007]本申請(qǐng)?zhí)峁┝艘环N程序發(fā)布方法,應(yīng)用于發(fā)布終端,所述發(fā)布終端與源文件服務(wù)器相連,該方法包括:
[0008]響應(yīng)于用戶在所述發(fā)布終端上觸發(fā)的發(fā)布操作,從所述源文件服務(wù)器上,獲取源文件及所述源文件對(duì)應(yīng)的源版本號(hào);
[0009]將所述源文件編譯為目標(biāo)文件;
[0010]發(fā)布所述目標(biāo)文件以及所述源版本號(hào)。
[0011 ] 可選地,上述的程序發(fā)布方法還包括:
[0012]記錄編譯環(huán)境的信息;其中,所述編譯環(huán)境為將所述源文件編譯為目標(biāo)文件的環(huán)境;
[0013]為所述編譯環(huán)境的信息,生成標(biāo)識(shí)序列;其中,所述標(biāo)識(shí)序列具有唯一性;
[0014]在發(fā)布所述目標(biāo)文件以及所述源版本號(hào)時(shí),發(fā)布所述標(biāo)識(shí)序列。
[0015]可選地,上述的程序發(fā)布方法中,所述為所述編譯環(huán)境的信息,生成標(biāo)識(shí)序列,包括:
[0016]為所述編譯環(huán)境的信息,將當(dāng)前時(shí)間及隨機(jī)數(shù),生成標(biāo)識(shí)序列。
[0017]可選地,上述的程序發(fā)布方法還包括:
[0018]生成主版本號(hào);其中,所述主版本號(hào)用于表示發(fā)布的所述目標(biāo)文件的版本;
[0019]在發(fā)布所述目標(biāo)文件以及所述源文件版本號(hào)時(shí),發(fā)布所述主版本號(hào);
[0020]可選地,上述的程序發(fā)布方法還包括:
[0021]響應(yīng)于用戶輸入的所述源版本號(hào),將所述源版本號(hào)發(fā)送至所述源文件服務(wù)器,以觸發(fā)所述源文件服務(wù)器查找所述源版本號(hào)對(duì)應(yīng)的源文件。
[0022]本申請(qǐng)還提供了一種程序發(fā)布裝置,應(yīng)用于發(fā)布終端,所述發(fā)布終端與源文件服務(wù)器相連,該裝置包括:
[0023]源文件及源版本號(hào)獲取模塊,用于響應(yīng)于用戶在所述發(fā)布終端上觸發(fā)的發(fā)布操作,從所述源文件服務(wù)器上,獲取源文件及所述源文件對(duì)應(yīng)的源版本號(hào);
[0024]源文件編譯模塊,用于將所述源文件編譯為目標(biāo)文件;
[0025]目標(biāo)文件及源版本號(hào)發(fā)布模塊,用于發(fā)布所述目標(biāo)文件以及所述源版本號(hào)。
[0026]可選地,上述程序發(fā)布裝置還包括:
[0027]編譯環(huán)境記錄模塊,用于記錄編譯環(huán)境的信息;其中,所述編譯環(huán)境為將所述源文件編譯為目標(biāo)文件的環(huán)境;
[0028]標(biāo)識(shí)序列生成模塊,用于為所述編譯環(huán)境的信息,生成標(biāo)識(shí)序列;其中,所述標(biāo)識(shí)序列具有唯一性;
[0029]標(biāo)識(shí)序列發(fā)布模塊,用于在發(fā)布所述目標(biāo)文件以及所述源版本號(hào)時(shí),發(fā)布所述標(biāo)識(shí)序列。
[0030]可選地,上述程序發(fā)布裝置中,所述標(biāo)識(shí)序列生成模塊包括:
[0031]標(biāo)識(shí)序列生成子模塊,用于為所述編譯環(huán)境的信息,將當(dāng)前時(shí)間及隨機(jī)數(shù),生成標(biāo)識(shí)序列。
[0032]可選地,上述程序發(fā)布裝置還包括:
[0033]主版本號(hào)生成模塊,用于生成主版本號(hào);其中,所述主版本號(hào)用于表示發(fā)布的所述目標(biāo)文件的版本;
[0034]主版本號(hào)發(fā)布模塊,用于在發(fā)布所述目標(biāo)文件以及所述源文件版本號(hào)時(shí),發(fā)布所述主版本號(hào);
[0035]可選地,上述程序發(fā)布裝置還包括:
[0036]源文件查找模塊,用于響應(yīng)于用戶輸入的所述源版本號(hào),將所述源版本號(hào)發(fā)送至所述源文件服務(wù)器,以觸發(fā)所述源文件服務(wù)器查找所述源版本號(hào)對(duì)應(yīng)的源文件。
[0037]由以上的方案可知,本申請(qǐng)?zhí)峁┑某绦虬l(fā)布方法實(shí)施例,應(yīng)用在發(fā)布終端上,發(fā)布終端與源文件服務(wù)器相連,源文件服務(wù)器上保存有待發(fā)布的源文件,程序開發(fā)人員若想要發(fā)布源文件,可以在發(fā)布終端上觸發(fā)發(fā)布操作,發(fā)布終端響應(yīng)于該發(fā)布操作,從源文件服務(wù)器上下載該源文件,以及源文件的源版本號(hào),并將源文件編譯為目標(biāo)文件后,發(fā)布目標(biāo)文件以及該源版本號(hào)??梢姡緦?shí)施例可以在發(fā)布目標(biāo)文件時(shí),同時(shí)發(fā)布生成該目標(biāo)文件的源文件的源版本號(hào),這樣,開發(fā)人員需要對(duì)某個(gè)目標(biāo)文件的源文件進(jìn)行調(diào)整時(shí),可以使用該源版本號(hào),查找到目標(biāo)文件對(duì)應(yīng)的源文件。
[0038]當(dāng)然,實(shí)施本申請(qǐng)的任一產(chǎn)品并不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
【附圖說明】
[0039]為了更清楚地說明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0040]圖1為本申請(qǐng)?zhí)峁┑某绦虬l(fā)布方法實(shí)施例1的流程圖;
[0041]圖2為本申請(qǐng)?zhí)峁┑某绦虬l(fā)布方法實(shí)施例2的流程圖;
[0042]圖3為本申請(qǐng)?zhí)峁┑某绦虬l(fā)布裝置實(shí)施例1的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0043]下面將結(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ù)的范圍。
[0044]參見圖1,其示出了本申請(qǐng)?zhí)峁┑某绦虬l(fā)布方法實(shí)施例1的流程。程序發(fā)布方法實(shí)施例I應(yīng)用在發(fā)布終端上,發(fā)布終端與源文件服務(wù)器相連。源文件服務(wù)器上保存有待發(fā)布程序的源文件。例如,源文件服務(wù)器為SVN(SubVerS1n的簡(jiǎn)稱)服務(wù)器。
[0045]如圖1所示,該程序發(fā)布方法實(shí)施例1可以具體包括步驟SlOl?步驟S103。
[0046]步驟SlOl:響應(yīng)于用戶在所述發(fā)布終端上觸發(fā)的發(fā)布操作,從所述源文件服務(wù)器上,獲取源文件及所述源文件對(duì)應(yīng)的源版本號(hào)。
[0047]其中,程序開發(fā)人員可以使用發(fā)布終端,發(fā)布源文件服務(wù)器上的源文件。
[0048]具體地,用戶在發(fā)布終端上觸發(fā)發(fā)布操作,該發(fā)布終端響應(yīng)于該發(fā)布操作,從源文件服務(wù)器上,獲取源文件及源文件對(duì)應(yīng)的版本號(hào)。為了便于描述,將該版本號(hào)稱為源版本號(hào)。
[0049]源版本號(hào),用于唯一表示一個(gè)源文件。具體地,發(fā)布終端與源文件服務(wù)器相連,程序開發(fā)人員可以使用發(fā)布終端,對(duì)源文件服務(wù)器上的源文件進(jìn)行編輯。需要說明的是,源文件服務(wù)器每次在對(duì)源文件進(jìn)行編輯后,均會(huì)生成一個(gè)新的源文件,每一個(gè)新的源文件均唯一對(duì)應(yīng)一個(gè)源版本號(hào)。也就是說,通過一個(gè)源文件版本號(hào),可以查找到唯一對(duì)應(yīng)的一個(gè)源文件。
[0050]例如,源文件服務(wù)器上保存的源文件為源文件0,對(duì)應(yīng)的源版本號(hào)為0,某個(gè)發(fā)布終端修改了源文件O上的某個(gè)部分,則源文件服務(wù)器根據(jù)修改生成源文件1,且生成與源文件I對(duì)應(yīng)的源版本號(hào)I。
[0051]需要說明的是,從源文件服務(wù)器中獲取到的該源文件,可以是最后一次編輯后的源文件,該源文件用于發(fā)布。
[0052]步驟S102:將所述源文件編譯為目標(biāo)文件。
[0053]其中,本實(shí)施例中的源文件,是開發(fā)人員編輯的文件。該文件并不能直接被用戶安裝使用,需要經(jīng)過編譯。編譯,是將源文件生成目標(biāo)文件,該目標(biāo)文件才可正常被用戶安裝使用。需要說明的是,編譯是軟件開發(fā)過程中的一個(gè)現(xiàn)有且常見的技術(shù),本申請(qǐng)并不贅述。
[0054]步驟S103:發(fā)布所述目標(biāo)文件以及所述源版本號(hào)。
[0055]其中,發(fā)布目標(biāo)文件,即是將編譯后的目標(biāo)文件保存至某個(gè)公共用戶可以訪問的地址。例如,保存至公共用戶可以訪問的網(wǎng)站服務(wù)器上。這樣,公共用戶可以在該網(wǎng)站服務(wù)器上下載該目標(biāo)文件,安裝后使用。
[0056]需要說明的是,發(fā)布該目標(biāo)文件時(shí),還需要發(fā)布該源版本號(hào)。具體地,目標(biāo)文件在發(fā)布時(shí),通常包括程序信息文件,程序信息文件中包含版本號(hào)、功能介紹等。因此,可以將源版本號(hào)保存在該程序信息文件中,進(jìn)行發(fā)布。
[0057]由以上的技術(shù)方案可知,本申請(qǐng)?zhí)峁┑某绦虬l(fā)布方法實(shí)施例,應(yīng)用在發(fā)布終端上,發(fā)布終端與源文件服務(wù)器相連,源文件服務(wù)器上保存有待發(fā)布的源文件,程序開發(fā)人員若想要發(fā)布源文件,可以在發(fā)布終端上觸發(fā)發(fā)布操作,發(fā)布終端響應(yīng)于該發(fā)布操作,從源文件服務(wù)器上下載該源文件,以及源文件的源版本號(hào),并將源文件編譯為目標(biāo)文件后,發(fā)布目標(biāo)文件以及該源版本號(hào)??梢?,本實(shí)施例可以在發(fā)布目標(biāo)文件時(shí),同時(shí)發(fā)布生成該目標(biāo)文件的源文件的源版本號(hào),這樣,開發(fā)人員需要對(duì)某個(gè)目標(biāo)文件的源文件進(jìn)行調(diào)整時(shí),可以使用該源版本號(hào),查找到目標(biāo)文件對(duì)應(yīng)的源文件。
[0058]參見圖2,其示出了本申請(qǐng)?zhí)峁┑某绦虬l(fā)布方法實(shí)施例2的流程。如圖2所示,該程序發(fā)布方法實(shí)施例2可以具體包括:步驟S201?步驟S203。
[0059]步驟S201:響應(yīng)于用戶在所述發(fā)布終端上觸發(fā)的發(fā)布操作,從所述源文件服務(wù)器上,獲取源文件及所述源文件對(duì)應(yīng)的源版本號(hào)。
[0060]步驟S202:將所述源文件編譯為目標(biāo)文件,記錄編譯環(huán)境的信息,為所述編譯環(huán)境的信息生成標(biāo)識(shí)序列,并生成主版本號(hào);其中,所述編譯環(huán)境為將所述源文件編譯為目標(biāo)文件的環(huán)境;所述標(biāo)識(shí)序列具有唯一性;所述主版本號(hào)用于表示發(fā)布的所述目標(biāo)文件的版本。
[0061]其中,發(fā)布終端在編譯源文件時(shí),是在一定的編譯環(huán)境下進(jìn)行的。編譯環(huán)境,可以包括發(fā)布終端使用的編譯工具、環(huán)境變量等。在將源文件編譯成模板文件的過程中,需要記錄編譯環(huán)境的信息。
[0062]由于同一發(fā)布終端,可以編譯多個(gè)不同的源文件,則記錄的環(huán)境信息是不同的。因此,需要為源文件生成唯一性標(biāo)識(shí),即本步驟中的標(biāo)識(shí)序列。
[0063]具體地,生成標(biāo)識(shí)序列的具體方式可以包括步驟Al。
[