Git学习笔记(2) --- References探寻
在上一篇文章Git學習筆記(1) --- 內部存儲模式中,已經(jīng)說了git的內部存儲模式以及.git/objects文件中的內容,這一篇文章主要講講git內部的references。
References簡介
git 除了會存儲提交歷史,還會存儲當前倉庫里有哪些分支,哪些tag,以及他們各自對應的commit id;還有當前的HEAD的指向。而這些都是references的工作。
references的本質是:用于存儲指向特定commit的指針。主要包括以下幾個內容:
References內容
braches文件夾會存儲當前倉庫所有的分支,并為每一個分支創(chuàng)建一個單獨的文件,分支名就是文件名,如上圖,當前倉庫就只有一個master分支。
那master文件里面存儲的是什么呢?
從上圖可以看出,master分支當前的最新的提交是adf0e13,所以master文件存儲的就是最新提交的commit id。另外,此時HEAD指針是直接指向master,和master對應的是同一個commit,所以此時HEAD文件內容就是:
如果HEAD指向commit和其他的分支最新提交是一致的,那么HEAD文件的內容就和上圖類似,不同就是分支名;如果HEAD是指向其他的commit,與所有的分支指向的都不一致時(例如checkout到之前的提交),此時HEAD文件直接儲存所指向的commit id,與master文件類似。
此外,tags文件的存儲模式與braches的存儲模式一致,因此不再贅述。
如果對本文有什么意見和建議,歡迎討論和指正!!!
總結
以上是生活随笔為你收集整理的Git学习笔记(2) --- References探寻的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转]mysql优化——show pro
- 下一篇: IE继续努力吧