在使用 TortoiseGit 前,請確定你的電腦已經安裝好以下軟體:
接著再確定你已經依「ssh公錀認證登入」設定好你的環境,至於 remote bare repository 我們這裡是架設在 linux 上,架設的方法參考「建立一個集中控管的 git repository」,接下來的說明也會在這個環境下進行。
- 設定 Credential
還記得在「建立一個 remote git bare repository」中,我們用 ssh clone remote repository 的資料到 local 時用的 url 嗎? 當時用的是 ssh://192.168.0.115/~/repo.git,當時有說明,ssh://192.168.0.115 是使用 ssh 連線進 linux 的方法,在這裡,如上圖所示,於「Git/Credential」中輸入相同的 url,再於 Username 處輸入要登入的帳號,然後按【Add new/Save】,這樣我們就可以使用這個帳號及 ssh 連線到 remote bare repository 了。
- 設定 User Info
- clone remote bare repository
繼擇「Git Clone」會出現如下視窗,於 URL 欄位,輸入我們要 clone 的 remote bare repository,於 Directory 欄位輸入一個 local 的目錄,clone 下來的檔案會放入該目錄,按下【OK】。
- 新增檔案
現在我們要將它 commit 到 local repository 後,再 push 到 remote bare repository,如下,在該檔案上按滑鼠右鍵,出現如下的選單,選擇「Git Add」後按【OK】。
在於該檔案下按滑鼠右鍵,出現如下選單,選擇「Git Commit」,在接下來出現的對話視窗中的 Message 輸入一些說明文字後按【OK】,這樣我們就將這個檔案 commit 到 local repository 了!
接下來於該目錄的任意空白處按下滑鼠右鍵,選擇「Git Push」,將會跳出如下對視窗,於 Local 處輸入「master」,其實輸入任何名稱都可以,這是 branch 的名稱,一般來說,第一個 branch 我們會將它命名為 master。
至於上圖的 Remote 選單,一開始應該是空白,因為我們尚未指定在 remote repository 我們要使用那個 reference。所以,要先按【Manage】設定好 remote 端的 reference,如下圖,點選「Git/Remote」,然後於 Remote 欄位輸入 origin,這個名稱也不是規定的,只是習慣上第一個參照會取這個名稱,在 URL 欄位輸入 bare repository 的位置後按【確定】即會如上圖所示,然後按【OK】,就將 fourth.txt push 到 remote bare repository 了!
- 瀏覽 repository 內容
上圖要特別注意的是紅框中的 HEAD,在 Git 中 HEAD 永遠指向目前這個 branch 的最新版本,所以視窗中顯示的那四個檔案正是目前 local repository 的最新內容。如果想看 remote bare repository 的最新內容呢? 點選左框中的「HEAD」,出現如下的視窗,藍框的部份是修改的歷程,綠框的部份是最後一項修改的檔案,如果要比對 local 和 remote 的差別,可以在檔名上 double click,即會出現比對的視窗,不過,我們可以再 click 紅框的 master 看一下 remote 的狀況。
點選 master 後出現如下視窗,右邊的選個項目第一個「headers/master」指向 local repository 目前的 master 這個 branch 的最新狀況,第二個「remotes/origin/HEAD」指向目前所選擇的 branch 的 remote 端最新狀況,第三個「remotes/origin/master」則指向 master 這個 branch 於 remote 端的最新狀況,因為在這裡只有一個 master branch,所以第二、三項是指向同一個地方。
問題是,我們想看的是有那些檔案及檔案的內容,該怎麼做呢? 於上圖右邊選單選擇我們要看的指標,例如,我們要看「heads/master」,就在這個項目上 double click,將會出現如下圖,該選項的所有版控歷程。這時候就可以任意選擇一個版本,在上面按右鍵選單中的「Browse repository」,就會出現該版本的所有檔案,要看檔案內容,再於檔案上 double click 即會出現檔案內容。