- branch :分支,預設分支叫做 master
- HEAD:指標,當前位置
- origin:預設遠端儲存庫名稱
git checkout 編號
回頭觀看版本內容 ( 輸入編號前兩碼再按 tag 可以自行補齊編號 )git checkout master
返回最新的版本( 分支名稱 )git log
檢視歷史紀錄
可使用 git log
查詢目前歷史紀錄,再使用 git checkout 編號
回到某個時刻查看當下版本記錄 (這時 HEAD 在過去版本上,與 master 沒有在一起 ),查看完畢後可以再使用 git checkout master
回到目前最新版本 (這時 HEAD 回到現在與 master 在一起 )。
// 一個分支 ( master ),三個 commit 。 ▲
開分支流程
- 新增分支:
git branch 分支名稱
- 查看分支:
git branch
- 如果 git branch 後面沒接任何參數,它僅會印出目前在這個專案有哪些分支。Git 預設會幫你設定一個名為 master 的分支,前面的星號 * 表示現在正在這個分支上。
- 切換分支:
git checkout 分支名稱
- 刪除分支:
git branch -d 分支名稱
、-D 是強制刪除 - 還原上個版本:
git reset HEAD^
- 還原到上上個版本 :
git reset HEAD^^
還原技巧
新增檔案時,檔案還沒加追蹤 ( untracked files ) 時,清空工作目錄
其實還未被追蹤 ( 還未加入索引 & commit ) 的檔案,可以直接在專案內把檔案刪除就好,但還是瞭解一下 XD
-
顯示此次清除的檔案:
git clean -n
-
強制清除檔案:
git clean -f
檔案已加入追蹤,清空工作目錄
-
還原工作目錄上已更改的檔案 :
git checkout -- <file>
實做步驟 :
- 專案中新增 index.html 。新增 h1 標籤,並執行指令
git add .
加入索引 - 後來在檔案中在新增 h2 標籤,但未執行
git add .
,這時如果想要刪除 h2 標籤,可使用git checkout -- index.html
- 專案中新增 index.html 。新增 h1 標籤,並執行指令
小測驗
Q01 . 哪些檔案已加入索引 ,但還未 commit ?
index.html
Q02 . 哪些檔案還未被追蹤 ?
index9.html
Q03 . 哪些檔案未加入索引也未 commit ?
all.css 、index3.html
Q04 . 哪些檔案還在工作目錄上,未被加入索引 ?
all.css 、index3.html、index9.html
Q05 . 下指令把 index9.html 清空 ?
git clean -f
資料來源
- 六角學院影片 : Git、GitHub 教學
- 六角學院-共筆教學文件
- Git & GitHub 教學手冊