| 從資料夾到GIT,<參照 : 筆記、版本控制前言>
一、GIT 指令
git init 初始化
- 指令 :
git init
- 用途 : 建立.git資料夾,放入預先建立好的東西。
- RMK : init 為初始化的意思
git clone 網址
- 用途 : 下載專案。
git status 檢視現在的狀態
- 指令 :
git status
- RMK : 會出現相關指令說明,如
git add <file>...
,git restore <file>
git add 決定是否加入版本控制
- 前言 : 基於安全性考量,部分檔案不加入版本控制。
- 加入版本控制指令 :
git add 檔案名稱
,它將檔案分成兩個區塊,區塊一 : untrack(不加入/不被版本控制)、區塊二 : stage(有加入版本控制);git add .
,會將所有檔案都加入版本控制 - 移除版本控制指令 :
git rm --cached <file>..." to unstage
- RMK : commit 為創造新版本
git commit 新建一個版本
- (新建版本+相關敘述)指令 :
git commit -am "xxxxx"
,m為messenger
git commit -am "xxx" 將 git add . 與git commit 合併
- RMK(1) : 會自動將所有檔案加入,並commit。這裡的所有檔案,並不包含新檔。所以有新檔案時,
git add 檔案
或git add .
- RMK(2) : 打錯字欲修改commit messenger,使用指令
git commit --amend
- RMK(3) : 還沒commit,但改的東西不想要了,使用指令
git restore 檔名
git reset Head^
- RMK(1) : Head^ 為頭(head)的前一個(^)狀態
- 指令 :
git reset Head^ --hard
、git reset Head^ --soft
、git reset Head^ --mixed
(mix 為預設狀態) - 說明 : 使用
git reset Head^ --soft
,改過的檔案還是會保留
git merge 合併
- 說明 : 可於本地使用
git merge <file>
,或在GitHub上用pull request
git log 歷史紀錄
- 歷史紀錄指令 :
git log
,commit+獨一無二的編號、commit的作者、commit時間、commit的內容 - RMK : 加入版本控制的動作,是每次都要做一次。一個commit相當於新建一個新的資料夾,資料夾名稱即commit的編號。
git log --oneline 簡短版的 git log
git checkout 回到某個版本
- 歷史紀錄指令 :
git checkout 版本序號
- 回到master上最新版本指令 :
git checkout master
git diff 查看歷史更改紀錄
.gitignore 要忽略的檔案
- 操作步驟 : 先建立檔案,在於檔案中輸入要忽略的檔名,最後再存檔
- RMK : 可將與專案無關的檔案,(如 : 使用者個人、作業系統產生之相關檔案),放入gitinore中
二、結論
狀況一、有新檔案
- 記得將新檔以
git add 檔案
或git add .
加入資料夾中。不然後出現untrack。放入資料夾後就會進入stage階段。git commit -am "xxxxx"
,放入新的版本中。 - RMK : stage階段,就相當於放入資料夾內
狀況二、無新檔案,但更改現有檔案
- 使用指令 :
git commit -am "xxxxx"
三、Recall GIT 觀念
四、參考資料
- 程式導師計畫第五期 [GIT 101]