Git 基礎知識 常用指令 分支管理策略

2021-08-19 01:44:50 字數 3354 閱讀 3457

1. git 誕生

2. git 是乙個分布式版本控制系統

3. 集中式 和 分布式版本控制系統的區別

分布式 版本控制系統:

4. 常用的版本控制對比

svn

git

1. 版本庫、版本、版本號

版本號:每乙個版本的唯一標識;每次提交日誌,git都會生成乙個版本號;和svn不一樣,git的commit id不是1,2,3……遞增的數字;而是乙個sha1計算出來的乙個非常大的數字,用十六進製制表示

**當前版本:**git中,用head表示當前版本;head是指向master分支的指標

2. 工作區、暫存區

工作區 、暫存區 、版本庫的對應關係:

方式一:在現有資料夾中 git 初始化git init

第一步:檢視 倉庫中被改動檔案的 狀態:git status

(1) 檢視檔案變化:尚未暫存的檔案git diff

(2) 檢視檔案變化:已暫存 將要新增到下次提交的檔案git diff --cahced

(3) 一鍵還原的命令git checkout -- 檔案:三種情況,如下

第二步:將有變動的檔案 放到 快取區:git add *git add -a

第三步:將快取區檔案 提交到 本地倉庫:git commit -m "日誌"

1. 檢視詳細日誌git log

2. 檢視簡要日誌(常用)git log --oneline

3. 檢視詳細版本號日誌git log --pretty=oneline

4. 檢視所有日誌(含回退前的日誌)git reflog

5. 版本回退git reset --hard 版本號前幾位git reset --hard head^

方式二:

6. 版本回退後 強行上推git push -f origin master

1. git 分支開發工作流

2. git 分支 常見操作

(1) 檢視所有分支(當前分支前面有 * 表示)git branch

(2) 檢視本地分支 和 所有遠端分支git branch -a

(3) 建立分支git branch 分支名

(4) 刪除本地分支git branch -d 分支名、 刪除遠端分支git push origin --d 分支名

刪除 遠端分支:git push origin --d 分支名

(5) 切換分支git checkout 分支名

(6) 建立 並 切換分支git checkout -b 分支名

(7)分支 合併:指定分支 到 當前分支git merge 分支名git merge --no-ff 分支名(推薦使用)【重要】

結果:master分支上**更新,但沒有提交記錄(沒有dev分支上的日誌提交記錄)

結果:master分支上**更新,同時會dev分支上的日誌提交記錄

(8)分支 變基— 整合來自不同分支 ** 的另一種形式【重要】

git merge rebase dev命令:

參考一參考二

**衝突:merge 與 rebase 不同的解決策略

1. git 分支管理策略

(1) 主分支 master

(2) 開發分支 dev

(3) 功能分支 feature(臨時)

git checkout -b feature-x develop

git checkout develop

git merge --no-ff feature-x # 開發完成後,將功能分支合併到develop分支

git branch -d feature-x # 刪除feature分支

(4) 預發布分支 release(臨時)
git checkout -b release-1.2 develop

git checkout master

git merge

--no-ff release-1.2 # 確認沒有問題後,合併到master分支

git tag -a

1.2# 對合併生成的新節點,做乙個標籤

git checkout develop

git merge

--no-ff release-1.2 # 再合併到develop分支

git branch -d release-1.2

# 刪除預發布分支

(5) bug分支(臨時)

git checkout -b fixbug-0.1 master

git checkout master

git merge

--no-ff fixbug-0.1 # 修補結束後,合併到master分支

git tag -a

0.1.1

git checkout develop

git merge

--no-ff fixbug-0.1 # 合併到develop分支

git branch -d fixbug-0.1

# 刪除"修補bug分支"

2. 解決:分支衝突

3. 解決:緊急bug

4. 開發:不確定的功能

Git基礎知識教程整理(Git分支管理)

git branch develop git checkout develop 或者 git checkout b developgit checkout命令加上 b引數表示建立並切換。git branch或者 git branch a 後面不跟分支名時指列出所有分支,當前分支前面加 git bra...

git管理分支指令

1.分支指令 git branch檢視本地分支 git branch a檢視本地分支和遠端分支 git branch dev建立本地dev分支 git checkout dev切換到dev分支 git merge dev合併dev分支 git branch d dev刪除dev分支 git bran...

git 常用基礎知識

建立版本庫 版本庫 responsitory 可以簡單理解成為乙個目錄,這個目錄裡面的所有檔案都可以被git管理起來。1 建立乙個新目錄 makdir learngit cd learngit pwd pwd 命令用於顯示當前目錄 2 通過git init命令把這個目錄變成git可以管理的倉庫 把檔...