[TFS] 分支與合併

在很早以前就知道TFS有分支與合併的功能,只是一直都不太知道要怎麼用,這次去Tech Day 2014聽完課"從版本管控到持續整合 (Continuous Integration, CI) 的實踐"後......感覺自己需要被鞭子抽幾下,有那麼好用的功能卻一直放著不用.....=.=,以下為根據實務上會用到功能的練習一下

分支流程設計

  • 至少要兩條線:主要、開發(本篇針對此作測試)

  • 最多不超過4條

  • 插單或Bug單分支合併
image


建立分支


原始檔案總管-->建立分支

image

在原專案名稱後加上dev

image

確定後會在原始檔案總管看到分支目錄

image

之後的開發會以分支目錄-dev為主,而Production若有bug則修改Main的程式後再合併到dev

合併-Dev to Main


情境:將Dev新增/修改的功能合併到Main上,如下圖修改index.cshtml的標題

dev main
image image

image

image

預設以最新版本合併-->下一步-->完成,此時Main的程式就會與Dev是同步的

image


合併-Main to Dev


情境:若Main的程式修正了bug需合併到Dev上,但在Dev也已修改到同一支程式。

此時我們需要合併兩邊的變更

Dev:改成1.0.0.1版 Main:增加一行程式,並mark原本的Title
image image

此時我們若執行合併時,由於Dev已有修改,所以會跳出"解決衝突"的畫面,若無法自動合併的則需手動合併。當然你也可以直接以Main或Dev為主,下圖為執行手動合併。

image

程式差異比較,勾選衝突的部份是哪一個為主(也可以兩個多選),選了會自動加到下方的結果

image

確認後將檔案儲存後,將畫面閞閉會出現是否接受合併結果的提示,按"是",Main及Dev的檔案都會是簽出的狀態,確認無誤後再簽入

image

image

這個網誌中的熱門文章

IIS 設定只允許特定IP進入