eclipse svn 分支合併

2021-08-10 00:19:13 字數 1641 閱讀 8546

首先需釐清svn的分支以下幾個概念:

trunk: 主幹(可以理解為開發環境的**,平常做開發的工作目錄)

branches:從主幹拷貝了乙份**重新在svn伺服器上的建了個分支目錄(通常叫branch,一般與生產上的**保持同步)

tag:主幹版本標記(標識每次大的公升級版本號)。

我們專案目前的版本管理策略如下(可以根據自已的專案實際需要建立不同的版本管理策略):

1、系統在沒有上線之前,只有乙個主幹(trunk),所有開發人員在主幹上進行協同開發。

2、系統上線之後,在主幹的基礎上建立乙個分支,該分支上主要用於修復生產環境的bug,或者緊急新功能上線。主幹仍然進行新功能模組的開發。

3、每次生產環境的公升級,都從分支上進行打包部署。公升級完之後需將分支上改動的**及時合併到主幹上(開發人員常常忘記,切記)。

4、新功能在主幹上開發好了,需要進行一次大的公升級,可以先將主幹打上乙個tag做為大版本號,並且同時在此基礎上建立乙個對應的分支,然後切換到分支上進行打包部署,這個版本的生產**維護也在分支上。

原則:分支用於生產**維護,主幹用於平時開發,tag用於主幹大版本的標記。

由於我們專案由好幾個子系統構成乙個大的集群系統,系統之間的版本統一就顯得很重要。所以每次上線,即使相關子系統沒有**改動,也需要重新建立乙個分支版本以適應其它子系統的版本改動。

說了這麼多之後,來說下具體分支合併到主幹上的操作,因為這部分最容易出錯:

合併根據目標不同分為2種:

1、分支合併到主幹:主要用在修復完生產bug,並上線之後。需把改動的**合併到主幹上。

2、主幹合併到分支:公用的邏輯改動,需反映到所有並行的分支上。

注意:合併是要在目標目錄上進行操作的,如:分支合併到主幹(主幹為目標),需切換到主幹上操作合併功能,主幹合併到分支(分支為目標),需切換到分支上進行操作。

分支合併到主幹的具體步驟:

1、主幹目錄右鍵選擇合併

出現以上6個合併選項,

第乙個選項:合併指定的版本,可以是從分支合併到主幹,也可以是主幹合併的版本,主要作用把分支的部份修改合併到主幹上。

第二個選項:復興分支,這裡會把分支上所有的需改都合併到主幹上。如果只想合併修改的一部分,並適合這項。

第三個選項:將主幹上的修改合併到分支。

第四個選項:2個不同的分支合併,但其實也可以是分支和主幹的合併,只要from選擇為主幹就行。

通常選擇第一項或第四項進行操作,這裡需要注意的是:

這裡其實就是比對to版本和from版本的差異,並把差異合併

到to的當前版本(head版本)中去。

注:如果要把分支所有的修改合併到主幹上,from需要選擇主幹建立見分支時的版本號,to選擇分支最新版本(head版本)就行了。

如果from也選擇主幹head版本,to也選擇head版本,就會把所有分支與主幹不同的差異覆蓋到當前主幹上來。造成主幹的檔案被分支覆蓋。

合併當中出現:

no uncommited modified :表示當前版本還有沒有提交的檔案,如果不需要提交就選擇revert.

working copy at a single version:表示當前目錄沒有從svn伺服器更新最新的版本。update下後在操作就行了。

eclipse svn 分支合併到主幹

首先需釐清svn的分支以下幾個概念 trunk 主幹 可以理解為開發環境的 平常做開發的工作目錄 branches 從主幹拷貝了乙份 重新在svn伺服器上的建了個分支目錄 通常叫branch,一般與生產上的 保持同步 tag 主幹版本標記 標識每次大的公升級版本號 我們專案目前的版本管理策略如下 可...

git子分支合併主分支,主分支合併子分支

子分支合併主分支 當前在login子分支 git status 檢視未提交的檔案 git add 提交到暫存區 git commit m 提交說明 提交到倉庫區 git merge master 在子分支 合併 主分支 git push 提交更新遠端倉庫 login 的 如果git遠端倉庫不存在lo...

分支管理 建立分支 合併分支

分支名前面有 代表此分支是當前所在分支 常用命令 步驟 建立分支 git brabch 分支名 檢視所有分支 git branch 切換到指定分支 git checkout 指定的分支名 代表當前所在分支 在自己的分支上進行修改並push到遠端倉庫對應的分支,最後的push的命令 git push ...