選單
GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
2 分鐘閱讀時間 (474 個字)

TortoiseGit 操作

VM9POLgzPyThohVKfYVW71Kz-O4sUtmpdPDZ2nTw2d_20210522-104434_1

 前言

TortoiseGit有很多功能選項可以在螢幕上點選。

善用工具,會很方便!

 
 一、基本操作

以下是幾個常用且基本的功能操作:

  • Pull
  • Push
  • Commit
  • Clone
  • Git Sync
  • Switch/Checkout
  • Show Log
  • Stash

其中Pull、Push、Commit、CloneSwitch/Checkout和Show Log大家一定很熟悉吧!


Git Sync

可以查看尚未Push的commit有哪些。


Stash

Stash可以暫存變動。
假設今天你在目前的branch上的作業尚未完成,但突然有其他緊急的需求需要先調整,那原本的變動就可以使用Stash暫時存下來。
使用Stash Change將變動存起來。

等到緊急的需求完成後,再切回原本的branch。
使用Stash Pop取出最後暫存的變動,並會移除這個變動。

也可以使用Stash List,查看目前暫存的Change有哪些。

在Stash List中,選擇欲回復的暫存,點選右鍵,選擇Stash Apply就可以取出變動。
並且可以保留此變動在Stash List中。

 
二、 進階操作

接下來介紹一些進階操作,這些是我的親身經驗,也是遇過這些經驗,讓我更了解小烏龜的功能了。

  • 解衝突
  • Cherry Pick
  • Revert 回復已Push的Commit

解衝突

首先將最新的master Merge進有衝突的分支。

當有衝突時,Project的資料夾的圖示上會看到驚嘆號的符號,表示有衝突。
對資料夾點右鍵,選擇Resolved,會看到有衝突的檔案。

可以在檔案路徑下看到衝突檔,

直接開啟檔案的話會看到裡面有<<<<<<< HEAD與>>>>>>> master的衝突標示,
表示衝突的地方。

在這邊提供三種解衝突的方法:

1. 使用小烏龜解衝突工具
在資料夾點右鍵,選擇Resolve。

  將欲使用的程式貼在下方框,完成後再點Mark as resolved。

完成解衝突。

2. 使用VS開啟檔案直接修改

將衝突標記移除,留下需要的程式段,點存檔後,將此檔案選為resoleved。

完成解衝突。

3. 使用 WinMerge工具,協助比對檔案內容差異且可修改檔案

完成解衝突。


Cherry Pick

情境: Commit且Push完之後才發現切錯分支了

首先到git上找出該Commit,並且複製其完整的SHA。

將VS切到正確的分支上。

開啟CMD,並切到GIT的資料夾底下,下指令git cherry-pick <SHA>,將Commit 取到正確的分支。


Revert 回復已Push的Commit

情境: 已經Push的程式,但不需要此設置了。

以下方法並非復原Push,而是由git生成一個反向的程式,再Commit這個程式來達到回復的作用。

首先進到Show Log。

對欲回復的Commit點選右鍵,點選Revert change by this commit

資料夾點右鍵Commit,會看到兩個反向設定的檔案。

Commit後即完成回復的操作。


分享到此,這是我的一點點的工具操作的經驗分享,雖然可能都是些基本的操作,但希望幫助到有需要的人。

內容有錯誤的地方或是有任何建議的地方還請多多指教。


Ansible #9 - Ad-Hoc 指令[2]
實用小工具 - gitignore.io 介紹

相關文章

 

評論 1

Neil Tsai (蔡慶霖) 於 2021/05/25, 週二 09:33

雖然主軸是教使用 TortoiseGit,但我還是提一下其它解衝突的做法供各位參考,畢竟 IDE 和 Editor 一直都有在進化哦~
1. Visual Studio 中的 Git 體驗
2. Using Version Control in VS Code

雖然主軸是教使用 TortoiseGit,但我還是提一下其它解衝突的做法供各位參考,畢竟 IDE 和 Editor 一直都有在進化哦~ 1. [url=https://docs.microsoft.com/zh-tw/visualstudio/version-control/git-with-visual-studio?view=vs-2019]Visual Studio 中的 Git 體驗[/url] 2. [url=https://code.visualstudio.com/docs/editor/versioncontrol]Using Version Control in VS Code[/url]
已經注冊了? 這裡登入
Guest
2024/05/08, 週三

Captcha 圖像