Category: tfs

雲端是當今顯學,基於保密及資安考量,許多企業還是會選擇在地端甚至網路隔離環境作業。微軟的版控解決方案 - TFS Server 的繼任者是 Azure DevOps Server,雖有 Azure 之名,但可在安裝在企業內部隔離網路環境,稱職扮演地端版控伺服器角色。 最近嘗試在 Azure DevO...

在 Git 開分支很便宜,真正痛苦的是合併,過與不及都是災難,因此如何依專案性質、團隊習性及管理要求訂出合宜的分支策略是個重要問題。別人耍得虎虎生風的大關刀,到你手上不是敲到頭就是閃到腰,故分支策略很難拿別人的現成做法硬套蠻幹,需與專案、團隊與制度契合才能順暢。 橫柴入灶其實也行,隨便挑一個分支策略...

前篇文章介紹過怎麼用 Visual Studio 將修改「Check In」(嚴格來說是 Stage + Commit + Push)進 Git 版控,這篇聊聊 TFVC 轉換 Git 要花點時間適應的一件事 - 充滿神祕色彩,與 TFVC 大不相同的 Branch (分支)。 TFVC 切 Bra...

從 TFVC 轉換到 Git,初學者第一個想問的通常是「要怎麼 Check In?」 Git 記錄版本異動的方式與 TFVC 不同。TFVC 的 Check In (簽入)是指將本地檔案修改存入伺服器;而 Git 屬分散式版控,在工作資料夾就本機儲存庫(Repository,放在 .git 隱藏目錄...

先前提到 TFVC 與 Git 的抉擇,我個人評估轉向 Git 利大於弊,長遠來看會是較佳的選擇。(我認為 TFVC 跟 WebForm 一樣已是待退老兵,淡出舞台只是時間早晚問題) 決定轉向 Git 的第一個問題是,現有 TFS 上的 TFVC 專案要怎麼搬到 Git 專案? 簡單,從 TFVC ...

SourceForge 式微,Codeplex 熄燈,時至今日,Github 算是在開源界一統江湖了,而 Git 也成為當今版控主流標準。 工作環境用的版控系統,汰換 VSS 後改用 TFS 多年,目前也遇上尷尬問題:該繼續用 TFVC(Team Foundation Version Control...

工作需求,上線前置作業想從 TFS 版控抓出指定期間異動過的檔案清單,懶得尋覓現成軟體或工具,寫幾行程式自幹搞定。 TF.EXE 有個 History 命令可列舉特定期間(/v:Dyyyy-MM-dd~Dyyyy-MM-dd)特定目錄下(/recursive)所有 Changeset,加上 /for...

在公司混得愈久,沾染的專案就愈多(講得好像專案是髒東西一樣,咦,不是哦?),每回改程式查程式的第一步就是從 TFS Get Latest 取回最新版本,日積月累留下後遺症。不知從何時起,Visual Studio 中只要是與 TFS 有關的操作都如老牛拖車,讓我有想爆粗口的衝動(大家都知道,我性...

工作環境用的是 TFS 2012 Build Service,最近要編譯 VS2015 專案,程式用到 C# 6.0 超好用的字串插值寫法當場被打臉,得到 Unexpected character '$' 錯誤。原因很明顯,VS2015 改用 Roslym 編譯器,TFS 2012 Build ...

保留完整版本變更歷程是版控系統的核心精神之一,檔案項目一旦簽入,就算使用者要求刪除,項目從清單上消失,仍可透過歷史記錄還原每一個曾簽入的版本。 實務上,偶爾會發生不慎誤將不該簽入內容丟上版控的狀況(例如:誤簽入個資或機密敏感內容),此時版控對保留完整軌跡的堅持變成缺點,不管刪除或 Rollba...

換用TFS版控時我們開始採用「多重簽出」原則,大幅改善VSS時代「專案一被人簽出其他人就動不了」的困擾。但隨之而來的副作用是:多人同時修改,若簽入時別人已先簽入更新的版本,就需要執行程式碼合併。 在我們的經驗裡,TFS有個神奇又方便的「自動合併」功能,只要程式修改幅度不大,沒有改到同一段程式,...

前幾天,參與的專案遇到緊急狀況,剛改版的系統有一段邏輯因正式台資料與預期不同而出錯,需要緊急換版,負責的同事因故無法即刻救援,改派我代打上陣。有一段時間沒參與,我對最新開發進度有點脫節,本次代打任務形同開發團隊的一次臨時抽考。 在我的開發機器開啟Visual Studio,先從TFS版控抓回最...

前天提過的TFS Build Queue卡單今天再度上演,一樣又是重啟TFS Build Service才解決,由於已非偶發罕例,決定展開調查。由事件檢視器查到一筆發生在卡單前一刻的可疑錯誤,Build 1257號,正好是被卡住1258號的前一筆,訊息為An error occurred whi...

今早使用TFS Build Service建置部署時,建置作業卡在Queue裡遲遲不開始,等了五分鐘感到不對勁,展開調查。 狀態顯示我排在第二順位,似乎在等待其他建置執行完畢,但超過5分鐘頗為異常,決定查查前面的烏龜車是哪一台。 登楞!整個Queue裡只有我一人。夾緊擴約肌在廁所門口...