TFS 2013 的離線版本管控–Local Workspace
近年來有很多文章訴說著分散式版控有多好,而集中式有多麼地不堪使用。但,我覺得很多事情都是分久必合,合久必分的局面。無論是技術或是工具一切都是為了符合需求,沒有所謂的絕對那一方面就比較好。
然後最近發現還是有很多人對於 TFS 的版控還停留在 TFS 2005 的印象,都認為 TFS 這種集中式的版本管控只要斷線之後就無法做任何簽出簽入或是Undo 的動作。
其實在 2012 之後,TFS 就有新增 Local Workspace 的機制來克服這個問題。雖然沒有辦法像 DVCS 那樣可以隨意地分支或是有自已的歷程,但至少不用煩惱臨時在外面 coding 時卻沒有辦法做比對、undo、簽出的動作。
雖然新增了 Local workspace 的機制,卻因為完全不影響到原來的使用習慣,所以導致很多朋友可能沒有注意到這個,或是不知道原來 Local Workspace 是這樣子的應用需求。
像我個人因為工作的關係常常需要出差,通常只能在通勤的時候寫寫程式。然而在外工作網路就是一個比較不確定的因素,所以有一個離線機制可以讓我和平常有連線的時候都是一樣的使用經驗就顯得非常重要。若是用 2005 / 2008 這種舊版的版控機制的話那就有得受了,要先把連線機制斷開可以讓我做修改,回到公司之後再把專案的版控連線回去還要看東西有沒有跑掉什麼的。光是這樣子就不會讓我想要在沒有網路的地方工作。
馬上來看一下,現在我人正在時速 280 的高鐵上開著方案總管,每個檔案前面確實有簽出編譯或是新增檔案的符號。
但開啟 Team Explorer 的時候卻可以看到 TFS 都是「離線」的狀態,連版本管控的選項都沒有
由於 Local Workspace 的機制關係,所有的 ChangeSet 都會在本機儲存一份
比對是我們攻城師必備的工作項目之一,當然在離線的時候也是可以做版本比對的。這樣子就立馬知道早上和妹聊天過後改了什麼地方。
有時候一時手賤不小心刪除檔案也是相當常見偶爾發生,所以復原到原來的版本就非常重要。
GJ 這樣子就不用擔心在外沒有網路的時候,可以做個人簡易的版控機制,也不需要改變習慣而轉換到 DVCS 或是 TFS Git 上。
當然除了 TFS 2013 支援以外也需要 Client 端 Visual Studio 2013 的輔助才能辦得到,因為這都需要本機的版控機制處理。
相信這對於企業想要集中式管理又想要讓同仁有一些離線的版控機能的話,這個機能是可以符合企業和同仁在第一線的需求
追碼加映
之前有朋友常常在詢問如何把其他設定過 workspace 的項目去掉
可以在「管理工作區」的項目中將「遠端工作區」開啟就可以直接刪除沒有在用的環境了