全程剖析:Subversion合并之簡單介紹二
通過上篇文章的講解你已經對Subversion合并有一些認識了吧,那么本文繼續上篇文章介紹,希望你能學到更多知識。
4.Subversion合并跟蹤
Subversion1.5記錄合并時發生的事情:它會跟蹤合并,所以下一次Subversion會記住上一次合并的事情,這個特性支持了下面的用例:重復合并:本周將分支合并到另一個分支,下一周再做一遍。Subversion會記住已經合并的東西,而且只合并新的修改。沖突解決的自動合并。Subversion可以自動完成合并的大多數工作,但是合并不可避免的帶來沖突,Subversion的內部合并算法不能解決。如果這樣,Subversion會告訴用戶手工解決沖突。MarkPhippard的講了這個問題。Cherrypicking:合并只針對一個或部分修改,而不是所有的修改。記錄手工合并:有時候用戶會手工合并一些東西(使用編輯器從一個文件拷貝代碼到另一個文件),Subversion1.5具備明確添加手工合并的能力,所以合并跟蹤信息依然完整。合并回退:取消一個合并。合并經常不是很完美,你會發現一些事情出了問題,Subversion允許你取消合并。合并審計:合并數據會自動添加到提交日志(MarkPhippard也講了這個問題)。
5.GUI客戶端和合并跟蹤
如果Subversion的GUI客戶端支持它,合并跟蹤會真的非常強大。GUI客戶端會利用合并跟蹤特性讓合并易于使用,而且對所有用戶都更加接近。CollabNet在一個Eclipse的合并跟蹤客戶端上工作,未來的幾天可能會有一個預覽,openCollabNet這里。Subversion1.5對客戶端有一個反饋,例如:有時候Subversion不能自動合并兩個文件,需要開發者解決”合并沖突”,Subversion會告訴客戶,由客戶來決定怎樣做,例如Subclipse會將沖突文件發送到Eclipse的圖形化diff工具,所以用戶可以解決這個沖突(它實際上進行了3方diff,但是那超出了本文的范圍)。
6.合并跟蹤早期采用計劃
為了加快Subversion1.5的合并跟蹤特性的開發,CollabNet在openCollabNet開始了一個Merge TrackingEarlyAdopterProgram,在這個程序里你可以看到:Subversion合并跟蹤設計文檔。包含合并跟蹤特性的Subversion1.5預發布程序一個包含合并跟蹤歷史的實例Subversion版本庫,一個與CollabNet的Subversion提交者和其他人討論這個特性的論壇缺陷報告和改進請求很快也會發布GUI客戶端,你可以在這里找到程序:http://merge-tracking.open.collab.net
7.下面是什么?
合并跟蹤的主張很直接:”Subversion以前沒有這個功能,現在有了”,你準備好了嗎?如果你正在因為不想處理麻煩的手工合并跟蹤而為分支躊躇,你或許可以重新思考一下分支策略,來充分利用在不同分支并行開發的好處。在9月26日,CollabNet會組織一個關于分支策略的ebinar,CollabNet的Subversion顧問BobJenkins和AukeJilderda會解釋不同的分支策略,并展示Subversion1.5如何支持他們。這里注冊。合并跟蹤改進了合并的質量,添加了跟蹤能力。加入MergeTrackingEarlyAdopterprogram,現在就開始學習這個新特性。下載我們的客戶端并使用,它將會幫助我們為Subversion1.5做好準備。如果你因為等待合并跟蹤而還沒有部署Subversion,現在是你離開你的遺留工具而使用Subversion的時候了。
8.背景:CollabNet與合并跟蹤
CollabNet強烈的投入到合并跟蹤特性的開發:
CollabNet組織了需求收集的客戶峰會(2006年1月)。
CollabNet雇員編寫了大多數規格。
CollabNet領導了合并跟蹤特性的開發力量。
我們開始了MergeTrackingEarlyAdopterProgram。
CollabNet開發了合并跟蹤的GUI客戶端
到這里已經對Subversion合并介紹完畢了,你對Subversion合并應該有了大致的了解了吧。
【編輯推薦】