Git 是學習軟體開發不可或缺的工具,本系列文不只示範基礎指令,更進一步探討在每次操作時,.git/ 資料夾發生的變化,藉此一窺 git 幕後的運作機制。
研究所畢業後第一件事情不是打開求職網站投履歷,而是回頭去讀那些一直知道很重要、之前卻因為要趕論文而無暇複習或學習的觀念。 而首個要深入探究的內容,是學校不教、但...
在我們初學 git 時,遇到的指令有 git add、git commit、git branch、 git push 等等,再透過 git status 與 g...
在上一篇文章中,我們提到底層的「管路」指令會做出 blob、tree、commit 等物件,而這些正是認識 git 結構的核心觀念! blob 全稱為 bina...
在 Day 3 的文章尾聲,我們發現:就算檔名不同,只要內容相同,就會產出一樣的雜湊碼,例如: empty1.txt 跟 empty2.txt 都是空文字檔,...
從今天開始,一連三天,我們將快速複習 git 上層的「瓷器(porcelain)」指令,日後再一一拆解每個步驟,仔細觀察下完這些指令之後,git 內部發生哪些變...
分支管理是 git 的核心功能之一,不論是在本地端、或者跨機器協作,都可以讓我們在某個支線上進行開發或測試,而不影響主線。 本篇文章將在本地端的 git 倉儲創...
使用 git 進行版本控管的一個好處是可以進行多人協作,團隊程式碼被放在如 GitHub、GitLab 之類的遠端空間,每位成員的裝置都可以把自己的版本「推」上...
在前面三篇文章中,我們快速用上層瓷器指令走過 git 的常用功能,而這一切的根本,在於以下指令: git init 如果沒有下這道指令去初始化 git 資料夾...
講到「分支」的時候,大家腦中浮現的是什麼畫面? 是不是類似這樣: 但在 git 內部,分支並不是這樣運作的,並沒有「一個一個 commit 連線成分支」這種結構...
在 Day 5 文章中,我們知道要形成一個 commit 前,要先下 git add 指令把檔案放到預存區(staging area)。 所以預存區是什麼?為什...