專家指點(diǎn)Eclipse下如何使用Subversion
本節(jié)接著上節(jié)介紹在Eclipse中使用Subversion,主要包括與Repository保持同步,使用屬性,Tag和Branch,修訂歷史以及結(jié)論。
在Eclipse中使用Subversion
現(xiàn)在,既然你的支持Subversion的工程已經(jīng)啟動(dòng)并且運(yùn)行起來,那么大多數(shù)必要的Subversion命令就可經(jīng)由"Team"上下文菜單存取(參考圖5)。你可以在PackageExplorer中看到你的本地文件的狀態(tài)(參考圖6),其中,任何修改了的文件都被標(biāo)記上一個(gè)星號。存儲在倉庫中的文件都顯示一個(gè)小黃桶圖標(biāo)(代表了一個(gè)數(shù)據(jù)庫);還沒有被添加到倉庫中的文件以一個(gè)問號顯示。
.大多數(shù)Subversion命令能被經(jīng)由Team菜單存取,.你可以在PackageExplorer中看到本地文件的狀態(tài)。
(一)與Repository保持同步
從倉庫中更新你的文件并且把你的變化提交到倉庫是相當(dāng)直接的過程,這可以使用"Team>UpdateandTeam>Commit"菜單選項(xiàng)來實(shí)現(xiàn)。在提交你的變化之前,你可能想看一下自從你的上次更新以來是否服務(wù)器上有任何文件被修改。為此,你可以使用"Team>SynchronizewithRepository"。這個(gè)命令讓你看到有哪些內(nèi)容已經(jīng)被局部地修改,有哪些內(nèi)容在服務(wù)器上修改,以及這兩種修改之間的任何沖突(參考圖7)。你還可以以可視化方式看到?jīng)_突的版本,并且在提交你的變化之前糾正任何比較突出的沖突。
(二)使用屬性
在Eclipse中使用Subversion屬性是Subversion具有創(chuàng)新性的特征之一。在Subversion中,你可以把元數(shù)據(jù)("properties")關(guān)聯(lián)到任何文件或目錄。你可以定義任何你喜歡的屬性,但是Subversion也提供了一些有用的內(nèi)置屬性,例如下面圖8中所提供的這些屬性:
svn:executable屬性,允許你在支持這種能力的操作系統(tǒng)上設(shè)置一個(gè)文件的可執(zhí)行標(biāo)志。
svn:need-lock屬性,可以用來在文件(例如,對二進(jìn)制文件非常有用)上強(qiáng)加排斥鎖。一個(gè)定義了svn:need-lock屬性的文件一次只能被一個(gè)人修改。當(dāng)該文件被檢出時(shí),它是只讀的。如果你想修改該文件,你需要首先使用"Team>Lock"菜單選項(xiàng)。之后,使用"Team>Unlock"釋放該文件,或僅提交你的變化。這一行為將釋放該鎖并且讓其它的用戶也得到該文件上的一把鎖。
三)Tag和Branch
在Subversion中,很容易創(chuàng)建新的tag和branch。Eclipse中使用Subversion時(shí),你可以使用tag來標(biāo)識一個(gè)特定的版本(使用一種可讀的名字,例如"Release1.0")。;而一個(gè)branch用于新的開發(fā)工作而不影響主源碼基(稱作trunk)。在一個(gè)branch上的開發(fā)仍會繼續(xù)進(jìn)行,直到開發(fā)者已經(jīng)為把變化集成回主trunk作好準(zhǔn)備。在Subversion中,branch和tag都是通過制作給定修訂的一個(gè)虛擬副本(以另一個(gè)名字和/或另一個(gè)目錄)創(chuàng)建的。在常規(guī)情況下,branch存儲在branches目錄下,tag位于tags目錄下,盡管在實(shí)踐中為了滿足你的工程你可以使用自己的任何定制。從Eclipse中,"Team>Branch/Tag"菜單能夠使你創(chuàng)建branch和tag(參考圖9)。其中,Browse按鈕提供了一種方便的方法來查看有哪些branch和tag存在于倉庫中。當(dāng)你使用"Team>Switch"創(chuàng)建成功一個(gè)新的branch或tag時(shí),你可以非常容易地在branches之間進(jìn)行切換。無論何時(shí)你切換到一個(gè)不同的branch(或返回到trunk),Subversion將僅更新文件(它需要保持你的當(dāng)前工作的副本與目的branch之間的同步)。
(四)修訂歷史
象大多數(shù)SCM系統(tǒng)一樣,Subversion讓你跟蹤你的源碼的變化。"Team>ShowinResourceHistory"菜單選項(xiàng)能夠使你查詢這些變化的列表(包括對一個(gè)文件,目錄或甚至整個(gè)工程的改變)。記住,在Subversion中,提交是原子性的-一次提交由一組文件變化和一個(gè)全局注釋組成。"SVNResourceHistory"視圖向你顯示每一次提交的一個(gè)簡明視圖,包括修改的文件和相關(guān)注釋。
結(jié)論
Subversion是一種強(qiáng)有力的和非常靈活的SCM工具,也是CVS的一個(gè)成功的后繼者。結(jié)合Subclipse,Subversion能最終在你的EclipseIDE環(huán)境中得到全面的發(fā)揮。Eclipse下使用Subversion 介紹完畢。
【編輯推薦】
- 詳細(xì)講解:Subversion及其Eclipse插件的安裝
- 五大步驟實(shí)現(xiàn)MyEclipse6.5中SVN插件安裝
- 術(shù)語匯編:簡單剖析Subversion Eclipse
- Myeclipse6.5SVN集成三部曲及其配置七步走
- Google與Eclipse合作 圖謀稱霸開源領(lǐng)域