git基本知識

机械心發表於2024-06-30

檔案在本地倉庫的狀態

常用命令:

  • git status
    查詢狀態

  • git add
    新增到暫存區,可以使用萬用字元*

  • git commit desc:1
    提交到本地倉庫,只能提交暫存區的檔案,該次提交的描述

  • git commit -a -m desc:2
    表示直接提交,不用放到暫存區

  • git log
    檢視提交記錄

  • git reset --soft 123456
    傳入回退型別與版本ID,撤銷交版本ID對應的提交

  • git diff
    用於檢視工作區,暫存區,版本庫之間的差異,或者兩個版本之間的差異,或者兩個分支之間的差異
    不加引數顯示工作區與暫存區的差異

  • git diff HEAD 表示工作區與倉庫的差異

  • git diff --cache 表示暫存區域倉庫的差異

  • git diff 123456 654321 比較兩個提交版本之間的差異

  • git diff HEAD~ HEAD 表示最後兩次提交的版本之間的差異

  • git diff HEAD~2 HEAD 表示head與head之前的兩個版本的差異

  • gir diff HEAD~2 HEAD a.txt 檢視指定檔案的差6

  • git ls -files 檢視版本庫的內容

  • git rm a.txt 將檔案從工作區和暫存區中刪除(如果要從倉庫中刪除的話,得提交)

.gitignore

分支

git branch 檢視分支
git branch name1 建立名字位name1的分支
git checkout name1 切換到該分支
git switch name1 切換到該分支(推薦使用)
git merge name1 將name1分支合併到現在使用的分支,合併分支並不會刪除分支
git branch -d name1 刪除name1分支(name1已經被合併了)
git brach -D name1 刪除name1分支(name1還未被被合併)

合併衝突

一些細節

git會將檔案的內容生成一個40位的雜湊值
git預設不會將空資料夾放入版本庫