[git]使用vs code來比對不同分支差異檔案和細節

[git]使用vs code來比對不同分支差異檔案和細節

有時候我們可能因為檔案差異太大,難免會有失誤而merge錯誤的問題,這種時候我們可能會有比對不同分支的檔案和所有細節,在線上的github或gitlab都會有相關的功能,以github為例來說,也是會有差異性的比較,比如下圖是筆者所做的一個簡單git example的github repository。

'

按下去compare之後,就會看到列出差異的檔案和內容

但是筆者還是希望能直接在開發工具操作這件事情,後來發現vs code的git lens也有相關功能,而且git lens也提供了非常完整的git相關的很多功能,比如直接會在檔案顯示什麼時間commit的,並且是誰commit進去的

那接下來看一下我們如何使用vs code來做不同分支的檔案差異比對吧,在左邊檔案總管的左下角部份,我們可以看到GITLENS的頁籤,當我們點開來之後會顯示如圖示

可看到有很完成的本地和remotes分支還有其餘git相關功能,此時如果我們想要做不同分支的檔案差異,我們可以對著要比對的分支,以筆者的例子來說是要比較master

你也可以直接比較remote的branch來做比較哦,當我們做了比較之後,會再產生一個新的頁籤GITLENS RESULTS,接著我習慣動作是直接把GITLENS的頁籤折壘起來,使RESULT的可視範圍大一點

此時我們除了可以可commit記錄的檔案之外,最主要就是直接看差異檔案的內容,也可以直接在vs code裡面直接做編輯並存檔,以修正檔案的內容

接著注意一下,左邊是被比較的分支,右邊則是我們所處的分支,如果怕搞混的話,其實可以直接看頁籤會顯示哦

結論

你是否有更好的方法呢?如果有的話請不吝告知筆者哦。