今天學習了 git branch
可以先看到下面這張圖
假設我有一個參與的專案並且已經上線,專案本身有兩個 commit 紀錄,master 與 HEAD 都在第二個 commit 上。
那我今天想改個 bug ,又不想要改出來的東西被我改壞掉以至於整個專案被我毀掉的話,我就需要去開一個分支出來,在這個上面我想幹嘛就幹嘛,不會去影響到 commit 的紀錄,待確認完全沒問題後再合併到 master 裡去。
今天流程請見圖:
Step 1. 開分支
Step 2. 把 HEAD 移到 分支 上
Step 3. commit 分支
Step 4. 把 HEAD 移到 master 上
首先,打開終端機並進入昨天練習的目錄(昨天有練習了兩個 commit 的 project)
輸入 git branch 分支名稱
使用 git branch 看 HEAD 目前在哪裡,會發現我有兩個分支, HEAD 在 master
上
如果我要把 HEAD 切換到 ggg 上的話如何操作呢?
使用 git checkout 分支名稱 (昨天最後有補充到 git checkout 有切換分支作用)
再使用 git branch 看我的 HEAD
--到 ggg 惹~
先看一下我的 master 的 index.html 的樣子
--只有一個 h1 標籤
那我去修改我的 index.html (這時我的 HEAD 是在 ggg 上喲)
--新增了 h2 標籤
使用 git status 會看到我編輯了一個檔案
確認無誤後我就加入索引並作 commit 紀錄
如果我把 HEAD 移到 master 上,就會看到我的 html 變回原來的樣子
--哇嗚~好神奇(✪ω✪)
做完圖才發現 HEAD 是空心的喇,這點明天開始改進 ><
使用 -m 的參數就可以改名嚕!

--掰惹畏, master 也可以改名喲~
使用 -d 的參數即可刪除
--登愣~無法刪除! 醜一XDDDDD
可以看到 Git 很貼心的跟你說因為這個分支還沒完全合併所以不給刪,如果要刪除的話要使用 D 也就是大 d 來刪除
--哦耶,刪掉惹~
如果發現不給刪的情況,請確認 **HEAD** 是不是在那個分支上喲( • ̀ω•́ )
這時使用 -b 的參數就會幫你建立新的分支喲!
輸入 git checkout -b 新的分支名稱 就可囉!
以上,明天再繼續學習:)