關於git的基本核心操作總結

千行Kais發表於2024-06-16

注意:以下的【】中的內容均為可替換的內容

1.git config

git config --global user.name "[使用者名稱]"    設定使用者名稱
git config --global user.email "[郵箱名]"    設定郵箱

2.git init   進行初始化操作,目的是告訴git,該資料夾需要進行版本控制,操作成功後,資料夾會生成一個隱形資料夾.git。並且,初始化後,預設處於master分支

git init    初始化

3.git status  顯示當前工作目錄的狀態,包括已修改的檔案、未暫存的改動以及暫存區域與最新提交之間的差異。這個命令的輸出可以幫助瞭解專案的當前狀態以及下一步需要執行的操作。

4.git add   把檔案從工作區,提交到暫存區。即檔案會從untracked unstage未追蹤狀態,變為stage已追蹤狀態。

git add [檔名]    將檔案提交到暫存區

5.git commit  把檔案進行提交到本地倉庫

git commit                   將暫存區檔案提交到本地倉庫,會自動透過vim來編輯訊息

git commit -m  "[訊息]"       -m,使用該引數可以不用進入vim介面編輯訊息

git commit -a -m "[訊息]"     會自動完成工作區檔案的暫存和提交該命令等價於git add [檔名],git commit -m “訊息” ,只是這個命令是會把所有的已經跟蹤過的檔案都新增到暫存區(git add)。

git commit -am "[訊息]"       同樣可以自動完成工作區檔案的暫存和提交,只是-am可以寫一起        

6.git log  它會顯示倉庫中所有的提交記錄,按時間順序(預設情況下是從最近到最早)列出。

git log -p: 顯示每個提交的詳細差異(diff)。
git log --stat: 顯示每個提交的簡要統計資訊,包括修改了哪些檔案以及插入和刪除的行數。
git log --oneline: 每個提交顯示一行摘要資訊,這對快速瀏覽提交歷史很有用。
git log --graph: 顯示 ASCII 圖形表示的提交歷史樹結構,結合分支和合並情況。
git log --author="Author Name": 過濾顯示特定作者的提交記錄。
git log --since="2024-01-01": 僅顯示指定日期之後的提交記錄。
git log --grep="keyword": 僅顯示提交訊息中包含指定關鍵字的提交記錄。

7. .gitignore 簡單理解,.gitignore檔案中配置的檔案是你不希望被git來控制的。

.gitignore 是一個用於指定 Git 忽略哪些檔案和目錄的配置檔案。在專案中建立一個名為 .gitignore 的檔案,並在其中列出你想要 Git 忽略的檔案和目錄。

常見的用途包括:

  • 忽略編譯生成的檔案,如二進位制檔案、日誌檔案、臨時檔案等。
  • 忽略依賴管理工具生成的檔案,如 Node.js 中的 node_modules 目錄。
  • 忽略敏感資訊,如配置檔案中的密碼、API 金鑰等。
touch  .gitignore    建立 .gitignore檔案
以下是示例的.gitignore檔案的內容
# 忽略所有 .log 檔案
*.log

# 忽略 build 目錄
/build

# 忽略 node_modules 目錄
/node_modules

# 忽略 secret.config 檔案
secret.config

# 忽略以 .tmp 結尾的檔案
*.tmp

8.git branch  分支是 Git 的一個核心概念,它允許你從倉庫的主線分離出來,進行獨立開發,而不會影響主線程式碼。

git branch   檢視分支 
git branch <branch-name>    建立新分支
切換到其他分支,有以下兩種方式: git checkout
<branch-name> git switch <branch-name> 建立並切換到新分支,也有以下兩種方式: git checkout -b <branch-name> git switch -c <branch-name> 刪除分支: git branch -d <branch-name> 如果分支沒有被完全合併,Git 會警告你並阻止刪除。要強制刪除,可以使用 -D 選項 git branch -D feature/new-feature 可以強制刪除分支
git branch
-r 檢視遠端分支 git branch -a 檢視所有分支(包括本地和遠端) git branch -m <old-branch-name> <new-branch-name> 重新命名分支

9.git checkout 和 git switch

git checkout 和 git switch 都是用於切換分支的 Git 命令,但在 Git 2.23 版本之後,推薦使用 git switch 來替代 git checkout

10.git merge   把別的分支合併到當前分支

git merge <branch-name>    合併分支

補充:

echo "[訊息]" > test.txt   這條命令可以在git中建立一個test.txt檔案,裡面的內容是[訊息]

相關文章