git 回顧(1)初始化與提交
接觸 git 與 github 已經有不少時間了,但是由於經常使用 vs 外掛進行操作,而不是命令列操作,近期在使用命令列時發現,一些常用 git 命令還需要查下手冊。因此,本篇作為一個 git 回顧複習就產生了。
本文參考微軟文件(https://docs.microsoft.com/en-us/learn/modules/intro-to-git/ ) 在此文件中同時提供了 Azure Cloud Shell 虛擬環境來進行測試,學習回顧起來非常方便。
1 配置 Git
(1)首先判斷是否安裝了 Git
git --version
(2) 配置全域性變數(使用者名稱和郵箱)
git config --global user.name "<USER_NAME>" git config --global user.email "<USER_EMAIL>"
(3) 判斷設定全域性變數是否成功
git config --list
2 建立 Git 倉庫
(1)建立資料夾
mkdir Cats
(2)進入該資料夾
cd Cats
(3) 初始化該倉庫
git init
(4)可以通過檢視命令看到在倉庫資料夾下會多出一個 .git 隱藏檔案
ls -a
(5)通過命令檢視當前工作樹狀態
git status
(6)使用 help 引數來查詢 git 相關幫助, 同時也可以查詢對應命令的相關幫助
git --help git commit --help
3 建立新的檔案並新增到 git 倉庫中去
(1)新建一個檔案
touch index.html
(2)檢視 git 狀態
git status
(3)新增剛剛新建的檔案
git add index.html 或 git add .
(4) 再次檢視 git 狀態
git status
4 提交修改
(1)使用命令提交修改
git commit index.html -m "Create an empty index.html file"
(2) 這時再使用 git status 可以發現為空,這時因為在提交完 index.html 之後我們就沒有未提交的檔案了
(3)使用 git log 檢視提交記錄
git log
5 修改 index.html 並再次提交
(1)修改檔案
code index.html
(2) 使用 git status 檢視狀態,可以發現 index.html 已經修改完成,待提交。
(3)提交修改的檔案
git commit -a -m “add a heading to index.html”
這裡使用 -a 是自動新增從上次提交後有改動的檔案(新建的檔案不會自動新增,這時需要再次使用 git add )
6 繼續修改檔案
(1)在次使用 code index.html 對檔案進行修改
(2)使用 git diff 命令檢視檔案進行了哪些修改,紅色是刪除的,綠色是新增的
git diff
(3) git diff 預設將工作樹與索引進行對比,他會顯示未新增到索引的全部更改,可以使用 git diff HEAD 來檢視與上次提交對比的更改
(4)再次提交,除了可以使用 -a 來進行提交,也可以直接使用檔名來進行只提交對應檔案,順序可以更換
git commit -m "Add HTML boilerplate to index.html" index.html
(5)這時再次使用 git diff 將不會有任何輸出,因為在工作樹、索引以及 HEAD 中的檔案內容完全一致
(6) 建立 .gitignore 檔案來告訴 git 有哪些檔案不需要提交。例如在使用 vim 或 sed 等對檔案進行編輯的時候會產生 index.html~ 和 index.html.bak 等類似的臨時檔案,這些檔案我們不需要進行上傳,那麼我們只需要在 .gitignore 檔案中進行宣告即可。 .gitignore 具體內容如下:
*.bak *~
(7)自己的 .gitignore 檔案可以參考常見環境以及語言的配置(例如 github 上就會提供各種 .gitignore )
(8)更改 index.html 中的部分內容:例如將 feline 改為 furry ,使用 git status 與 git diff 分別檢視對應資訊
(9)使用 git add -A 和 git commit -m "message" 來進行提交 -A 代表將所有檔案(除了 .gitignore 中宣告的檔案)
7 增加一個目錄
(1) 新建一個目錄
mkdir CSS
(2)使用 git status 檢視,這時會發現,沒有更改的檔案,這是因為 git 只會自動跟蹤檔案變化而忽略了資料夾,改變此情況的常見做法是在該資料夾下建立一個空檔案,通常命名為 .git-keep
(3) 依次執行命令
touch CSS/.git-keep git status git add CSS git status
8 替換檔案
(1)刪除 CSS/.git-keep
rm CSS/.git-keep
(2)新建 site.css
touch site.css
(3)在 site.css 中增加程式碼,並在 index.html 引入 css 檔案 <link rel="stylesheet" href="CSS/site.css">
(4) 提交更改
git add . git commit -m " Add a simple stylesheet"
(5) 通過 git log 檢視歷史更改記錄,在有很多更改情況下,可以使用 --oneline 引數進行簡化,或者使用 -nX X 想要檢視的數量,從 HEAD 往下數