Category: git

昨天 Git 資料夾搬家一文發表後,讀者 Danny Lin 於小站留言提到一則重要觀念: 事實上 Git 並沒有記錄所謂的「搬檔/更名」動作,在 Git 眼中,不管搬檔案或檔案改名,都一律被視為刪除舊檔外加新增檔案,差別在於若刪除檔案與新增檔案的內容相似度達一定門檻(預設為50%),Git 就會將...

[2020-07-28 更正] 本篇提到使用 git mv 確保 git status 狀態為 renamed 的技巧非絕對必要性,即使狀態為 deleted + added,在 Commit 後 Git 也會自動判別成 renamed,詳情請見 冷知識 - Git 的搬檔更名跟你想的不一樣 隨著專...

工作專案採用 Git 版控接 TFS 伺服器。我遇到一個狀況:TFS 主機早期曾建了一些實驗性質的分支(例如:feature/test),在本機端已刪除,在 TFS 上也用網頁介面刪掉了。但是,在我開發機 Visual Studio 的 remotes/origin 下 feature/test 分...

目前碰到的工作環境,幾乎都有裝 Visual Studio,首次連上 TFS Git 時會使用 Visual Studio UI 設定使用姓名、Email,記憶連線 TFS 伺服器的帳號密碼,之前改用 Git 命令列工具什麼都不用設定就能操作。這次協助設定了一個沒有 Visual Studio 純用...

從 TFVC 轉換到 GIT 後(延伸閱讀:該用 TFVC 還是 Git?),我的版控習慣與態度有兩大改變。 以前使用 TFVC 時,程式要丟進 TFS 伺服器才能做版控,我常在本機寫些實驗性質或私房工具小專案,不好把公用伺服器當自己家,便沒版控無法享受改壞可以重來的便利;GIT 支援離線使用,現在...

分享私房小工具程式。 正式上線流程常需交付程式碼清單及異動程式碼,過去 TFS TFVC 時代我寫過類似的工具,改用 Git 之後,先前已分享過匯出 Git Commit 檔案並維持資料夾結構的寫法,當時是使用 PowerShell 加 xcopy。這回想更上層樓,兩個願望一次滿足 - 依資料夾結構...

工作上的小插曲。用 Visual Studio 2019 開發 ASP.NET MVC 專案,簽入 TFS Git 後同事抓回去發現漏了 /Views/Debug 下的幾個 cshtml。 聽到檔案路徑我很快就想到原因,是 .gitignore: 為避免編譯後的結果混入版控範圍,微軟提供的 Vis...

書到用時方恨少,前幾天遇到程式換版,想將 master 累積的幾次 Commit 內容合併到 release 分支準備上線。因觀念薄弱經驗不足技巧生疏,一時手忙腳亂。 痛定思痛,特別回家再演練一次 Git 合併分支上線情境,筆記備忘。 準備版本歷程實驗環境如下: Commit 1 (Init) -...

面對網頁擷圖、轉存 PDF、爬網頁、自動測試等需求,Headless Chrome 是十分可靠的免費解決方案。但由於 Chrome 屬桌面程式,實務應用上我習慣將其寫成排程程式或 Windows Service 以便掌控執行身分、執行個體數量,比直接由 IIS/IIS Express 呼叫穩定不易出...

在 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...