Git GUI – (2) 設定、Clone、Add、Modify
依照上一篇文章 Git GUI – (1) TortoiseGit, msysgit 安裝 安裝好 Git 工具後,這篇大概記錄一下怎麼處理 Clone, Add, Modify … 等操作。
安裝完 TortoiseGit 及 msysgit 之後,即可開始使用 TortoiseGit 來管理專案,本範例主要描述如何使用 TortoiseGit 來管理既有專案,包括從遠端倉儲複製資料(clone),操作本地倉儲(add, commit),操作遠端倉儲(push)以及處理衝突(conflict)。
【一、基本設定】
- 在本機電腦上新增一個資料夾,例如:E:\GitDaal\,進入該資料夾,點選滑鼠右鍵,選取 TortoiseGit -> Settings。
- 輸入個人資料(Config),名稱及電子郵件。
- 設定遠端伺服器(Remote),Remote name可以隨便輸入,輸入您的 git Url 後點選 Add New,設定完成後按確定關閉設定視窗。
【二、從遠端倉儲複製檔案 (Git Clone)】
- 進入剛剛新增的 E:\GitDaal\ 資料夾,點選滑鼠右鍵選取「Git Clone…」。
- 填入您的 Git URL,按下 OK 開始複製遠端倉儲的目錄及檔案。
- 看到 Success 表示目錄及檔案複製成功。
- 可看到 E:\GitDaal\ 資料夾及以下所有資料夾都有綠色圓圈的勾勾,表示所有檔案都複製完成,綠色表示目前工作目錄的檔案與本地倉儲的檔案一致。
【三、修改(新增)檔案】
下圖為 Git 工作流程,本範例中的 E:\GitDaal\ 即為工作目錄(working directory),經過編輯的檔案必須先透過存放進暫存區(staging area)後才可以成功儲存至本地倉儲(local repository),也只有在本地倉儲中的檔案及資料,才可以透過推送(push)的方式分享到遠端倉儲(remote repository)。
- 用文字編輯器開啟剛剛透過 Git Clone 複製下來的 README.txt,修改完後存檔關閉檔案。(E:\GitDaal\README.txt)例如增加文字 ” Git test by Hans”。
- 可以看到從原本的勾勾變成紅色圈圈驚嘆號,表示目前「工作目錄中」的檔案已經和「本地倉儲中」的檔案不一致了。
- TortoiseGit 簡化了上圖中 git add 指令,因此透過 TortoiseGit 可以直接做 commit 到本地倉儲的動作。點選滑鼠右鍵,選擇 Git Commit -> “master”
- 開啟 Commit 介面,Message 部份填入這次 Commit 的資訊,TortoiseGit 會將工作目錄中所有被修改過的檔案列在下方的列表中,這邊我們只更動了 README.txt 檔案,打勾表示同意將該檔案 commit 至本地倉儲。
- 出現 Success 表示檔案已成功 commit 到本地倉儲。TortoiseGit 為了讓使用者更方便,提供了左下角的 Push 按鈕,使用者可直接將檔案 push 到遠端倉儲,如果不想在此時 push,按下滑鼠右鍵的 TortoiseGit 選單中也有 push 的指令可選擇。
- 如果要增加新的遠端倉儲,可以點選「Manage」新增。點選 OK 之後如果出現 Success 字樣表示這次的 push 完成。
- 如果沒有出現 Success 可能是發生了衝突(conflict),請參考 Git GUI – (4) fetch、merge、pull、解決衝突情況(conflict)。
下一篇文章:Git GUI – (3) branch、conflict、merge
參考資料:
- Git 教學(1) : Git 的基本使用 @ 好麻煩部落格 http://gogojimmy.net/2012/01/17/how-to-use-git-1-git-basic/
- Git 教學(2):Git Branch 的操作與基本工作流程 @ 好麻煩部落格 http://blog.gogojimmy.net/2012/01/21/how-to-use-git-2-basic-usage-and-worflow/
- Git 情境劇 @ 好麻煩部落格 http://blog.gogojimmy.net/2012/02/29/git-scenario/
- Git GUI – (1) TortoiseGit, msysgit 安裝 @ 蛙齋 http://wazai.net/2563/git-gui-1-tortoisegit-msysgit-安裝
- Git GUI – (2) 設定、Clone、Add、Modify @ 蛙齋 http://wazai.net/2569/git-gui-2-設定、clone、add、modify
- Git GUI – (3) branch、conflict、merge @ 蛙齋 http://wazai.net/2734/git-gui-3-branch、conflict、merge
- Git GUI – (4) fetch、merge、pull、解決衝突情況(conflict) @ 蛙齋 http://wazai.net/2737/git-gui-4-fetch、merge、pull、解決衝突情況conflict