本發(fā)明涉及一種事件觸發(fā)方法,特別涉及一種可應(yīng)用于版本控制系統(tǒng)的事件管理系統(tǒng)、事件觸發(fā)方法及系統(tǒng)。
背景技術(shù):
::版本控制系統(tǒng)(versioncontrolsystem)是一種功能強(qiáng)大的必要工具。版本控制系統(tǒng)的基本概念是將所有的改版記錄儲存于中央服務(wù)器中,各工程師的工作區(qū)域(workspace)中則分別儲存有正在被該工程師修改的副本。版本控制系統(tǒng)允許多位工程師同時(shí)修改同一個(gè)文件,并可避免各版本發(fā)生沖突。利用因特網(wǎng)和版本控制系統(tǒng),分散在全世界各地的工程師即可方便地成為工作團(tuán)隊(duì)并共同合作。git是一個(gè)常用的分布式版本控制軟件,很多著名的軟件都使用git進(jìn)行版本控制,其中包括linux內(nèi)核等項(xiàng)目的開發(fā)流程。當(dāng)工程師進(jìn)行開發(fā)時(shí)候,常常都會(huì)等到一天工作結(jié)束所有人通過git的軟件上傳后才可以開始進(jìn)行測試/事件發(fā)動(dòng)等等,每次的版本控制后系統(tǒng)測試/事件發(fā)動(dòng)等等都占了大部分時(shí)間,不但耗時(shí)麻煩,并且無共同平臺或是可立即控制的內(nèi)容可以查看?;蛘?,工程師只能在自己所建立的環(huán)境當(dāng)中進(jìn)行測試,使得因與實(shí)際環(huán)境的差異而導(dǎo)致遺漏了重要設(shè)定,影響開發(fā)時(shí)程。此外,一般而言,git只能用來進(jìn)行版本控制或分享,并無法提供其他如自動(dòng)事件觸發(fā)等功能。因此,需要一種可用于版本控制系統(tǒng)如git系統(tǒng)的自動(dòng)事件觸發(fā)的管理系統(tǒng)及其相關(guān)方法。技術(shù)實(shí)現(xiàn)要素:有鑒于此,本發(fā)明提供一種事件管理系統(tǒng)及其事件觸發(fā)方法及系統(tǒng)。本發(fā)明實(shí)施例提供一種事件觸發(fā)方法,該方法適用于一事件管理系統(tǒng),其中該事件管理系統(tǒng)耦接至一版本控制服務(wù)器,該方法包括下列步驟:檢測該版本控制服務(wù)器所接收到的一版本控制指令是否為一提交指令;在檢測出該版本控制指令為該提交指令時(shí),解碼該提交指令得到一注解字符串;比對該注解字符串與至少一既定字符串,以判定該注解字符串是否符合該既定字符串,其中該既定字符串對應(yīng)于一既定事件;以及在判定該注解字符串符合該既定字符串時(shí),觸發(fā)既該定字符串所對應(yīng)的該既定事件。本發(fā)明實(shí)施例另提供一種事件管理系統(tǒng),該事件管理系統(tǒng)耦接至一版本控制服務(wù)器,該事件管理系統(tǒng)包括:一監(jiān)控模塊、一比對模塊以及一事件處理模塊;該監(jiān)控模塊耦接至該版本控制服務(wù)器,用以檢測該版本控制服務(wù)器所接收到的一版本控制指令是否為一提交指令;該比對模塊耦接至該監(jiān)控模塊,用以在該監(jiān)控模塊檢測出該版本控制指令為該提交指令時(shí),解碼該提交指令得到一注解字符串,比對該注解字符串與至少一既定字符串,以判定該注解字符串是否符合該既定字符串,其中該既定字符串對應(yīng)于一既定事件;該事件處理模塊耦接至該比對模塊,用以在該比對模塊判定該注解字符串符合該既定字符串時(shí),觸發(fā)該既定字符串所對應(yīng)的該既定事件。本發(fā)明另一實(shí)施例提供一種系統(tǒng),該系統(tǒng)包括:至少一用戶端、一版本控制服務(wù)器以及一事件管理系統(tǒng);該用戶端用以提供一版本控制指令;該版本控制服務(wù)器耦接至該用戶端,用以相應(yīng)該用戶端所送出的該版本控制指令,執(zhí)行相應(yīng)該用戶端的一版本控制操作;該事件管理系統(tǒng)耦接至該版本控制服務(wù)器,用以檢測該版本控制服務(wù)器所接收到的該版本控制指令是否為一提交指令,在檢測出該版本控制指令為該提交指令時(shí),解碼該提交指令得到一注解字符串,比對該注解字符串與至少一既定字符串,以判定該注解字符串是否符合該既定字符串,并在判定該注解字符串符合該既定字符串時(shí),觸發(fā)該既定字符串所對應(yīng)的一既定事件。本發(fā)明可有效提供開發(fā)過程中的時(shí)間彈性,并降低發(fā)動(dòng)環(huán)境的疑慮,從而有效地快速進(jìn)行開發(fā)及事件發(fā)動(dòng)。關(guān)于本發(fā)明其他附加的特征與優(yōu)點(diǎn),本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍的情況下,應(yīng)當(dāng)可根據(jù)本發(fā)明實(shí)施方法中所公開的事件管理系統(tǒng)及其事件觸發(fā)方法做些許的更動(dòng)與潤飾而得到。附圖說明圖1顯示包含本發(fā)明一實(shí)施例的事件管理系統(tǒng)的系統(tǒng)的示意圖。圖2顯示依據(jù)本發(fā)明一實(shí)施例的既定字符串的注冊方法的流程圖。圖3a至圖3c分別顯示依據(jù)本發(fā)明實(shí)施例的第一表格、第二表格與第三表格的示意圖。圖4顯示依據(jù)本發(fā)明一實(shí)施例的事件觸發(fā)方法的流程圖。圖5顯示依據(jù)本發(fā)明另一實(shí)施例的事件觸發(fā)方法的流程圖。主要組件符號說明:10系統(tǒng)100事件管理系統(tǒng)110注冊模塊120監(jiān)控模塊130比對模塊140事件處理模塊200版本控制服務(wù)器310、320、330用戶端400數(shù)據(jù)庫s202、s204、s206步驟table1、table2、table3表格s402、s404、s406、s408、s410步驟s502、s504、s506、s508、s510、s512步驟具體實(shí)施方式為使本發(fā)明的上述和其他目的、特征、和優(yōu)點(diǎn)能更明顯易懂,下文特舉出較佳實(shí)施例,并配合所附附圖,作詳細(xì)說明如下。注意的是,本章節(jié)所敘述的是實(shí)施本發(fā)明的最佳方式,目的在于說明本發(fā)明的精神而非用以限定本發(fā)明的保護(hù)范圍,應(yīng)理解下列實(shí)施例可經(jīng)由軟件、硬件、固件、或上述任意組合來實(shí)現(xiàn)。圖1顯示本發(fā)明一實(shí)施例的系統(tǒng)的示意圖。如圖1所示,系統(tǒng)10可包括一事件管理系統(tǒng)100、一版本控制服務(wù)器200以及一或多個(gè)用戶端310、320與330,其中版本控制服務(wù)器200耦接至用戶端310、320與330,用以提供用戶端310、320與330的使用者的軟件版本控制,以管控使用者上傳軟件的版本。用戶端310、320與330的使用者可通過版本控制指令例如更新指令來管控彼此之間的軟件的版本的各項(xiàng)變動(dòng)。具體來說,事件管理系統(tǒng)100與用戶端310、320與330可分別經(jīng)由一連接的網(wǎng)絡(luò)(未繪示),例如:任何有線或無線通信網(wǎng)絡(luò),如因特網(wǎng)、3g網(wǎng)絡(luò)和/或無線局域網(wǎng)絡(luò)(wlan)等等)耦接至版本控制服務(wù)器200,使得用戶端310、320與330可對版本控制服務(wù)器200下達(dá)各項(xiàng)版本控制指令,而事件管理系統(tǒng)100可監(jiān)控版本控制服務(wù)器200所接收到的版本控制指令。舉例來說,版本控制服務(wù)器200可為任一已知的分布式版本控制系統(tǒng),例如:git、mercurial、bazaar、darcs等的服務(wù)器,但不限于此。事件管理系統(tǒng)100耦接至版本控制服務(wù)器200以及數(shù)據(jù)庫400,可用以執(zhí)行本發(fā)明的事件觸發(fā)方法,其相關(guān)內(nèi)容將在后面章節(jié)中介紹。事件管理系統(tǒng)100可至少包括一注冊模塊110、一監(jiān)控模塊120、一比對模塊130以及一事件處理模塊140,其中注冊模塊110耦接至數(shù)據(jù)庫400,用以提供使用者注冊新的字符串并依據(jù)所注冊的內(nèi)容產(chǎn)生本發(fā)明所需的各項(xiàng)表格儲存至數(shù)據(jù)庫400中,其表格相關(guān)內(nèi)容將在后面章節(jié)中介紹。監(jiān)控模塊120耦接至版本控制服務(wù)器200以及比對模塊130,用以監(jiān)控版本控制服務(wù)器200的信息并在檢測到特定信息時(shí)通知比對模塊130。比對模塊130耦接至數(shù)據(jù)庫400、監(jiān)控模塊120以及事件處理模塊140,用以依據(jù)數(shù)據(jù)庫400中所注冊的數(shù)據(jù),分析監(jiān)控模塊120所接收到的版本控制服務(wù)器200的信息中是否包含既定的字符串,并且在判定包含既定的字符串時(shí),依據(jù)既定的字符串的定義產(chǎn)生一通知至事件處理模塊140。事件處理模塊140則可在收到前述通知時(shí),觸發(fā)前述既定的字符串所對應(yīng)的事件??衫斫獾氖?,注冊模塊110、監(jiān)控模塊120、比對模塊130以及事件處理模塊140可為具有適當(dāng)?shù)能浖坝布娐返挠布K,可用以實(shí)現(xiàn)其所對應(yīng)的各項(xiàng)功能與操作。在一些實(shí)施例中,每一既定字符串可包括一第一索引字符串、一第二索引字符串以及一第三索引字符串,而第一索引字符串、第二索引字符串以及第三索引字符串可同時(shí)定義在一表格中。然而,這樣的搜索與比對可能會(huì)耗費(fèi)大量的時(shí)間,因而減低運(yùn)算的效能。為了解決前述搜索與比對可能會(huì)耗費(fèi)大量的時(shí)間因而減低運(yùn)算的效能的問題,在一些實(shí)施例中,將既定字符串以分層方式定義,其中每一既定字符串可包括一第一索引字符串、一第二索引字符串以及一第三索引字符串,其中第一索引字符串定義在一第一表格中,第二索引字符串連結(jié)至第一索引字符串,為第一索引字符串的子字符串且定義在一第二表格中,而第三索引字符串連結(jié)至第二索引字符串,為第二索引字符串的子字符串且定義在一第三表格中。圖2顯示依據(jù)本發(fā)明一實(shí)施例的既定字符串的注冊方法的流程圖,用以注冊一既定字符串。依據(jù)本發(fā)明實(shí)施例的事件觸發(fā)方法可以適用于圖1中所示的事件管理系統(tǒng)100且由注冊模塊110所執(zhí)行。首先,如步驟s202,使用者可向注冊模塊110注冊第一層字符串,而當(dāng)注冊模塊110接收到使用者所欲注冊的一或多個(gè)第一層字符串之后,將注冊的一或多個(gè)第一層字符串加入至第一表格中,如圖3a所示的表格table1。注冊模塊110可將內(nèi)容launch的“l(fā)”存至數(shù)據(jù)庫400中,并在后端參數(shù)value里使用參考方式建立另一個(gè)usermanager中的“u”,以相同數(shù)字代表對應(yīng)英文字母,可省去比對字母的時(shí)間以利于之后比對模塊130可以更快速搜索所需字符串。參見圖3a,圖3a為顯示依據(jù)本發(fā)明一實(shí)施例的表格的示意圖,用以儲存第一層字符串。如圖3a所示,表格table1記錄有所有已定義或注冊的第一層字符串,表格table1至少包括字段1、2及3,其中字段1用以表示第一層字符串中開頭英文字母所對應(yīng)的數(shù)字代碼,例如開頭英文字母為“a”所對應(yīng)的數(shù)字代碼為“1”,開頭英文字母為“b”所對應(yīng)的數(shù)字代碼為“2”,依此類推。字段2為說明字段,用以描述第一層字符串中相同開頭英文字母所對應(yīng)的可能會(huì)有的情境,字段3為一參考對象字段,用以連結(jié)至第一層字符串中相同開頭英文字母的集合,提供相關(guān)的第二層字符串的索引。舉例來說,在本實(shí)施例中,注冊模塊110可將第一層字符串“l(fā)aunch”存至“l(fā)”集合中并儲存至數(shù)據(jù)庫400中,并在后端參數(shù)value里使用參考方式建立其相應(yīng)第二層字符串例如usermanager中的“u”的集合以利于之后比對模塊130可以更快速搜索所需字符串。舉例來說,如圖3a的table1所示,第一層字符串字母開頭為a的集合可包括“alarm”、“alert”,字符串字母開頭為b的集合可包括“boot”、字符串字母開頭為l的集合可包括“l(fā)aunch”等等,但本發(fā)明并不限于此。接著,如步驟s204,使用者可向注冊模塊110注冊第二層字符串,而當(dāng)注冊模塊110接收到使用者所欲注冊的一或多個(gè)第二層字符串之后,將注冊的一或多個(gè)第二層字符串加入至第二表格中,如圖3b所示的表格table2。參見圖3b,圖3b為顯示依據(jù)本發(fā)明另一實(shí)施例的表格的示意圖,用以儲存第二層字符串。如圖3b所示,表格table2記錄有所有已定義或注冊的第二層字符串,表格table2至少包括字段1、2及3,其中字段1用以表示第二層字符串中開頭英文字母所對應(yīng)的數(shù)字代碼,例如開頭英文字母為“a”所對應(yīng)的數(shù)字代碼為“1”,開頭英文字母為“b”所對應(yīng)的數(shù)字代碼為“2”,依此類推。字段2為說明字段,用以描述第二層字符串中相同開頭英文字母所對應(yīng)的事件動(dòng)作,字段3為一參考對象字段,用以連結(jié)至第二層字符串中相同開頭英文字母的集合,提供相關(guān)的第三層字符串的索引。舉例來說,在本實(shí)施例中,注冊模塊110可將第二層字符串“update_device”存至“u”集合中并儲存至數(shù)據(jù)庫400中,并在后端參數(shù)value里使用參考方式建立其相應(yīng)第三層字符串例如update_device中的“u”的集合以利于之后比對模塊130可以更快速搜索所需字符串。舉例來說,如圖3b的table2所示,第二層字符串字母開頭為u的集合可包括“usermanager”、“ui/gui”、“updatedevice”等等,但本發(fā)明并不限于此。最后,如步驟s206,使用者可向注冊模塊110注冊第三層字符串,而當(dāng)注冊模塊110接收到使用者所欲注冊的一或多個(gè)第三層字符串之后,將注冊的一或多個(gè)第三層字符串加入至第三表格中。如圖3c所示的表格table3。參見圖3c,圖3c為顯示依據(jù)本發(fā)明另一實(shí)施例的表格的示意圖,用以儲存第三層字符串。如圖3c所示,表格table3記錄有所有已定義的第三層字符串,表格table3至少包括字段1、2及3,其中字段1用以表示第三層字符串中開頭英文字母為u的集合,例如“usermanager”、“ui/gui”、“updatedevice”等等,而字段2為說明字段,用以描述第三層字符串中所表示的觸發(fā)事件及其動(dòng)作,字段3為一連結(jié)動(dòng)作字段,用以連結(jié)至事件觸發(fā)模塊140,以通知事件觸發(fā)模塊140啟動(dòng)適當(dāng)?shù)膽?yīng)用程序界面(api),以執(zhí)行第三層字符串中所表示的觸發(fā)事件及其動(dòng)作。使用者可依據(jù)其使用需求,添加所需要功能的對應(yīng)函數(shù)庫的第三層字符串及其對應(yīng)事件,這些事件可包括例如控制裝置、整合測試、終端客戶軟件更新等等事件,但不限于此。舉例來說,在本實(shí)施例中,注冊模塊110可將第三層字符串“update_device(value,string)”存至表格table3的“u”集合中并儲存至數(shù)據(jù)庫400中,并在表格table3中記錄當(dāng)收到update_device(value,device_string)時(shí),表示要以參數(shù)value與device_string觸發(fā)update_device事件,因此與事件觸發(fā)模塊140的連結(jié)動(dòng)作為update_device(value,device_string),但本發(fā)明并不限于此。當(dāng)前述圖3a至圖3c中所示的table1、table2以及table3已事先經(jīng)由注冊模塊110產(chǎn)生并儲存至數(shù)據(jù)庫400之后,可作為比對模塊130后續(xù)比對的判斷依據(jù),用以判斷是否觸發(fā)特定的事件。圖4顯示依據(jù)本發(fā)明一實(shí)施例的事件觸發(fā)方法的流程圖,用以判斷是否觸發(fā)特定的事件。依據(jù)本發(fā)明實(shí)施例的事件觸發(fā)方法可以適用于圖1中所示的事件管理系統(tǒng)100。首先,如步驟s402,事件管理系統(tǒng)100的監(jiān)控模塊120持續(xù)檢測版本控制服務(wù)器200所接收到的一版本控制指令并如步驟s404,判斷版本控制服務(wù)器200所接收到的版本控制指令是否為一提交指令。若否,則回到步驟s402,監(jiān)控模塊120繼續(xù)檢測是否有版本控制指令。具體來說,監(jiān)控模塊(monitormodule)可依據(jù)使用者所設(shè)定時(shí)間間隔來抓取版本控制服務(wù)器200(例如:git服務(wù)器)的信息,并過濾出版本控制服務(wù)器200所接收到的版本控制指令是否為一提交指令。當(dāng)判定版本控制服務(wù)器200所接收到的版本控制指令為一提交指令時(shí)(步驟s404的是),如步驟s406,事件管理系統(tǒng)100的比對模塊130自提交指令中解碼出一注解字符串并比對注解字符串與一或多個(gè)既定字符串。接著,如步驟s408,比對模塊130判斷解碼出的注解字符串是否符合至少一既定字符串。具體來說,比對模塊130將解碼出的注解字符串與數(shù)據(jù)庫400中已注冊的特殊字符串進(jìn)行比對,判斷是否有任何符合的既定字符串,其中每一既定字符串可用以觸發(fā)一既定事件。在一些實(shí)施例中,注解字符串還包括一第一參數(shù)、一第二參數(shù)以及一第三參數(shù),而每一既定字符串包括一第一索引字符串、一第二索引字符串以及一第三索引字符串,則比對注解字符串與既定字符串,以判定注解字符串是否符合至少一既定字符串的步驟可還包括以下步驟。首先,比對第一參數(shù)是否符合第一索引字符串,當(dāng)?shù)谝粎?shù)不符合第一索引字符串時(shí),表示第一參數(shù)未定義,判定注解字符串不符合既定字符串,表示比對失敗,并非特殊字符串。當(dāng)?shù)谝粎?shù)符合第一索引字符串時(shí),表示第一層比對通過,接著再比對第二參數(shù)是否符合第二索引字符串。當(dāng)?shù)诙?shù)不符合第二索引字符串時(shí),表示第二參數(shù)未定義,判定注解字符串不符合既定字符串,表示比對失敗,并非特殊字符串。當(dāng)?shù)诙?shù)符合第二索引字符串時(shí),表示第二層比對通過,再比對第三參數(shù)是否符合第三索引字符串。當(dāng)?shù)谌齾?shù)不符合第三索引字符串時(shí),表示第三參數(shù)未定義,判定注解字符串不符合既定字符串,表示比對失敗,并非特殊字符串。當(dāng)?shù)谌齾?shù)符合第三索引字符串時(shí),表示第三層比對也通過,便可判定注解字符串符合既定字符串。藉由分層比對的方式,可快速分辨出是不是已注冊的字符串,可提升比對運(yùn)算的效能并減少比對所需的時(shí)間。當(dāng)事件管理系統(tǒng)100的比對模塊130判斷注解字符串未符合任一既定字符串時(shí)(步驟s408的否),表示沒有任何既定事件需要觸發(fā),則回到步驟s402,監(jiān)控模塊120繼續(xù)檢測是否有版本控制指令。相反地,當(dāng)事件管理系統(tǒng)100的比對模塊130判定注解字符串符合至少一既定字符串時(shí)(步驟s408的是),如步驟s410,事件管理系統(tǒng)100的比對模塊130發(fā)出通知至事件處理模塊140,告知事件處理模塊140需要觸發(fā)注解字符串所符合的既定字符串所對應(yīng)的事件,因此事件處理模塊140便觸發(fā)注解字符串所符合的既定字符串所對應(yīng)的事件,執(zhí)行觸發(fā)事件的相應(yīng)動(dòng)作。舉例來說,比對模塊130可發(fā)送通知user_manager(value,string)至事件處理模塊140,以使事件處理模塊140觸發(fā)使用者定義的事件。在另一實(shí)施例中,比對模塊130可發(fā)送通知updatedevice至事件處理模塊140,例如update_device(ture,0xfa76e21av),以發(fā)動(dòng)控制裝置端的開或關(guān)。當(dāng)事件處理模塊140收到比對模塊130發(fā)出的前述通知后則開始進(jìn)行通知中所指定的各項(xiàng)事件例如usermanager的事件發(fā)動(dòng)。舉例來說,當(dāng)事件處理模塊140接收到“update_device(true,0xfa76e21av)”的通知時(shí),事件處理模塊會(huì)相應(yīng)前述更新裝置通知中的布爾值“true”與裝置代碼“0xfa76e21av”來開啟裝置代碼為“0xfa76e21av”的裝置。類似地,當(dāng)事件處理模塊140接收到“update_device(false,0xfa76e21av)”的通知,則事件處理模塊140會(huì)相應(yīng)更新裝置通知中的布爾值“false”與裝置代碼“0xfa76e21av”,關(guān)閉裝置代碼為“0xfa76e21av”的裝置。舉例來說,參見圖5,圖5顯示依據(jù)本發(fā)明另一實(shí)施例的事件觸發(fā)方法的流程圖,用以判斷是否觸發(fā)特定的事件。依據(jù)本發(fā)明實(shí)施例的事件觸發(fā)方法可以適用于圖1中所示的事件管理系統(tǒng)100。在本實(shí)施例中,假設(shè)版本控制服務(wù)器200為一git服務(wù)器且提交指令為對應(yīng)于git服務(wù)器的一提交(gitcommit)指令。另外,圖3a至圖3c中所示的table1、table2以及table3已事先經(jīng)由注冊模塊110產(chǎn)生并儲存至數(shù)據(jù)庫400中,以作為比對模塊130后續(xù)比對的判斷依據(jù)。公知地,當(dāng)用戶端300的使用者需要更新版本信息或更新軟件時(shí),先發(fā)出gitcommit指令來向git服務(wù)器注解此次更新內(nèi)容,之后再發(fā)出gitpush指令來更新git服務(wù)器上的軟件。在本實(shí)施例中,事件管理系統(tǒng)100會(huì)持續(xù)監(jiān)測git服務(wù)器是否有收到來自使用者的gitcommit指令并接著判斷是否需要觸發(fā)任何既定事件。首先,當(dāng)監(jiān)控模塊120檢測到版本控制服務(wù)器(亦即:git服務(wù)器)所接收到的版本控制指令為提交指令“gitcommit–m“l(fā)aunch:update_device((true,0x1234)””時(shí)(步驟s502),通知比對模塊130準(zhǔn)備進(jìn)行定義的字符串比對程序。比對模塊130于是解碼gitcommit指令得到注解字符串“l(fā)aunch:update_device(true,0x1234)”(步驟s504)。具體來說,比對模塊130可將此注解字符串分為第一參數(shù)“l(fā)aunch”、第二參數(shù)“update_device”以及第三參數(shù)“update_device(true,0x1234)”。其中,每一既定字符串可包括一第一索引字符串、一第二索引字符串以及一第三索引字符串,其中第一索引字符串定義在第一表格table1中,第二索引字符串連結(jié)至第一索引字符串的子字符串,為第一索引字符串的子字符串且定義在第二表格table2中,而第三索引字符串連結(jié)至第二索引字符串,為第二索引字符串的子字符串且定義在第三表格table3中。接著,比對模塊130先比對第一表格(如圖3a的表格table1)的第一層字符串中是否有定義“l(fā)aunch”字符串(步驟s506)。在本實(shí)施例中,因表格table1中有定義“l(fā)aunch”字符串,表示第一層比對通過,因此比對模塊130接著比對第二表格(如圖3b的表格table2)的第二層字符串中是否有定義“update_device”字符串。在本實(shí)施例中,因表格table2中有定義“update_device”字符串,表示第二層比對通過,因此比對模塊130再比對第三表格(如圖3c的表格table3)的第三層字符串中是否有定義“update_device(true,0x1234)”字符串。在本實(shí)施例中,因表格table3中有定義“update_device(true,0x1234)”字符串,表示第三層比對也通過,比對模塊130判定注解字符串為一既定字符串,并發(fā)出通知至事件處理模塊140,表示使用者想要觸發(fā)特定的事件,于是事件觸發(fā)模塊140便依據(jù)“update_device(true,0x1234)”的定義,觸發(fā)更新裝置的事件,將裝置代碼為0x1234的控制裝置(例如:一待測手機(jī))開啟。類似地,當(dāng)使用者想要觸發(fā)更新裝置的事件,將裝置代碼為0x1234的控制裝置關(guān)閉時(shí),則可簡單地通過對git服務(wù)器下達(dá)提交指令“gitcommit–m“l(fā)aunch:update_device(false,0x1234)”來控制事件觸發(fā)模塊140執(zhí)行關(guān)閉裝置代碼為0x1234的控制裝置的相關(guān)操作。因此,依據(jù)本發(fā)明的事件管理系統(tǒng)及其事件觸發(fā)方法,可提供版本控制服務(wù)器的提交指令中的注解字符串附加的功能,可自動(dòng)分析提交指令后面的字符串,并在遇到有事先定義的特殊的字符串時(shí)則發(fā)出觸發(fā)對應(yīng)事件的執(zhí)行的通知至事件處理模塊,使得事件處理模塊可執(zhí)行所欲觸發(fā)的事件及對應(yīng)動(dòng)作,版本控制服務(wù)器本身的設(shè)定安裝等等都無須更動(dòng),可輕易實(shí)現(xiàn)在軟件版本上傳更新之后可以指定相關(guān)動(dòng)作進(jìn)行測試整合/新增所需要發(fā)動(dòng)的條件的目的,可有效提供開發(fā)過程中的時(shí)間彈性,并降低發(fā)動(dòng)環(huán)境的疑慮,從而有效地快速進(jìn)行開發(fā)及事件發(fā)動(dòng)。本發(fā)明的方法,或特定形態(tài)或其部分,可以以程序代碼的形態(tài)存在。程序代碼可以包含于實(shí)體媒體,如軟盤、光盤、硬盤、或是任何其他機(jī)器可讀取(如計(jì)算機(jī)可讀取)儲存媒體,亦或不限于外在形式的計(jì)算機(jī)程序產(chǎn)品,其中,當(dāng)程序代碼被機(jī)器,如計(jì)算機(jī)加載且執(zhí)行時(shí),此機(jī)器變成用以參與本發(fā)明的裝置。程序代碼也可通過一些傳送媒體,如電線或電纜線、光纖、或是任何傳輸形態(tài)進(jìn)行傳送,其中,當(dāng)程序代碼被機(jī)器,如計(jì)算機(jī)接收、加載且執(zhí)行時(shí),此機(jī)器變成用以參與本發(fā)明的裝置。當(dāng)在一般用途處理單元實(shí)際操作時(shí),程序代碼結(jié)合處理單元提供一操作類似于應(yīng)用特定邏輯電路的獨(dú)特裝置。雖然本發(fā)明已以較佳實(shí)施例公開如上,然而其并非用以限定本發(fā)明,任何本領(lǐng)域普通技術(shù)人員,在不脫離本發(fā)明的精神與范圍的情況下,應(yīng)當(dāng)可作些許的更動(dòng)與潤飾。舉例來說,本發(fā)明實(shí)施例所述的系統(tǒng)以及方法可以硬件、軟件或硬件以及軟件的組合的實(shí)體實(shí)施例加以實(shí)現(xiàn)。因此本發(fā)明的保護(hù)范圍應(yīng)當(dāng)視所附的權(quán)利要求書所界定者為準(zhǔn)。當(dāng)前第1頁12當(dāng)前第1頁12