今天終於來面對分支這個大魔王惹XDDDD
分支(branch)
之前我們常看到 master(主幹)
就是一個網站上的主要版本。
例如我們 火箭隊的小夥伴們
有分前後端,假如我們今天要協同合作一個專案,就要好好的了解分支如何使用。
那麼分支是殺毀?
我們今天每一次的 commit 就是一個新的版本紀錄,像我們今天是一個小團隊,如果我今天只是新增了一個 html 的檔案,所有的火箭隊的夥伴們都會看到。 但有時候我只是想新增一個檔案或修改某某 bug 而已,就這樣重新整理然後 commit 上去,啊如果東西被我改壞掉,不就是上傳了壞掉的 commit 版本了嘛,這樣很母湯欸...
所以,為了保持 master
的程式碼是乾淨且正常的 commit 版本,以避免影響專案的穩定性,我們就可以開 分支
去做開發。
在這個分支上我們就可以去做更新的動作,每次的更新都會有歷史紀錄儲存,並不會引響到 commit 版本上。
待確認好、開發完沒問題後就會進行 合併
。
HEAD
簡單來說就是 目前所在位置的指標
。在 .git
上有個目錄就是紀錄 HEAD
。
那我們可以看下面這張圖,當我們第一次 commit 後會得到第一版。這時會看到有 master
、HEAD
。
那我再 commit 一次,會看到 master
、HEAD
跑到第二個去了。
如果我今天想看第一版的內容的話,只需要把 HEAD
切換到第一版就可看到惹~
我該如何做到呢
打開終端機,並輸入以下指令
mkdir 目錄
git init
touch 檔案
git add .
git commit -m "修改紀錄"
接著輸入 git branch
(瀏覽目前分支)
會發現多一個新的 master
的分支(預設都是master),master前面的 *
代表在這個分支上面。
接下來我編輯了我的 index.html 的檔案,使用 git status
查詢狀態會顯示被修改(modified)
接著再去做一次上述的第4、第5的動作
使用 git log
查詢版本紀錄
如果我想看第一版紀錄是什麼的話,也就是說將 HEAD
指定到第一個版本去。
使用 git checkout 前四碼(識別碼)
就可以回到過去嚕!
好的,問題來惹,
怎麼回到現在呢?
別怕, 使用 git checkout master
就可以復原嘍!
是不是覺得 hen 厲害~
有沒有發現 git checkout
很熟悉? 對~~~前幾篇他的出現機率頗高der,只是前幾天的操作是救回檔案。
git checkout
也有切換分支的意思喲 ξ( ✿>◡❛)