1. 程式人生 > >eclipse svn Web專案 主幹與分支相互合併的操作

eclipse svn Web專案 主幹與分支相互合併的操作

在eclipse中使用svn管理Web專案主幹和分支時(非maven)專案,因為一些特有的檔案件或者檔案,比如 build資料夾、.classpath檔案等,總是產生衝突,導致無法進行合併。本文根據親身實踐,介紹如何實現Web專案使用SVN進行主幹分支的管理,並對解決上述問題的方式特別說明。

至於eclipse怎麼安裝SVN,以及為什麼SVN要進行主幹、分支、標籤這三種形式的管理,不再贅述,自行Google。

首先開啟資源庫,在資源庫中新建 Project Structure,如下圖所示


在彈出的對話方塊中輸入專案名稱,這個專案名稱就直接寫eclipse中的專案名稱即可,我使用的示例專案名稱為“CeShi”


點選OK後,在資源庫中會出現 如下圖所示的目錄


然後在eclipse中新建一個 Web專案,專案名為“CeShi”,建好後如下圖所示


將專案提交到SVN伺服器下的 CeShi目錄下的主幹目錄 trunk,如下圖所示,


完成這一步會有一個問題,在 trunk目錄下,沒有build這個資料夾,這就會導致後來有衝突,怎麼都解決不了。這是需要這樣操作一次,將本地專案刪除,從SVN資源庫trunk下將專案檢出,然後在本地專案會看到 build資料夾帶了一個小問號,這是再整個專案提交一次,trunk目錄下就有build檔案夾了,這是一個坑。

建立專案分支,在第2步中,如果選中“start working in the branch”在點選OK按鈕後,專案自動切換到分支目錄,如第三步所示,但是,最好不要這樣做。應該是將專案建立分支後,將本地專案刪除,然後再從svn資源庫中的branch目錄下的相應專案檢出。檢出後同樣如第3步所示


下面進入主要內容:

1、分支合併到主幹

在分支中新建一個包,包中新建一個類,然後將分支的修改提交到SVN伺服器。如下圖所示。


將分支的更新合併到主幹,這裡有一個非常關鍵的點。其實,SVN外掛提供了一個“Switch”按鈕,就在“Branch...”下面第三個,但是,對於Web專案而言,直接切換主幹和分支,在合併的時候就會出現無法解決的衝突。所以,正確的操作方式是,將eclipse中的本地專案刪除,然後去SVN中將trunk目錄的專案“check out”,然後再合併分支,合併後將更新提交到SVN伺服器。

2、主幹合併到分支,同分支合併到主幹一樣

異常情況:

當碰到如下這種情況的時候,則在本地專案上點選右鍵“team”->update to reversion,彈出的對話方塊點選確認即可。

當我們在主幹與分支之間合併的時候,同一個檔案,即使沒有修改也是會出現不同的版本號,在下一次合併的時候,兩個檔案就會產生衝突,比如下圖這個檔案,在主幹與分支的版本號就不一樣,當將高版本的專案往低版本的專案合併的時候,就會產生衝突,比如現在主幹合併到分支就會出現衝突,如圖2,解決的辦法就是,根據實際情況,在衝突的檔案上點選右鍵,選擇“Edit tree confilicts”。彈出的對話方塊包含幾個選項如下圖3所示,四個選項中,第一個,是保持本地不便,第二個是更新本地,第三個是不做操作,第四個複選框是標記為衝突解決,一般選擇第三個就同時選擇第四個複選框。

到這裡,我所碰到的坑算是填完了,各位相互學習。原創文章,轉載請在文章首部明顯部位標識文章連結。