目錄
一、理解分支
? ? ? ? 1.1圖示
????????1.2 打印倉庫下有哪些分支
? ? ? ? 1.3創建分支
? ? ? ? 1.4HEAD與切換分支
? ? ? ? 1.5合并分支
? ? ? ? 1.6流程圖理解
二、刪除分支
?
三、合并分支沖突
? ? ? ? 3.1.問題導入
? ? ? ? 3.2.解決
????????3.3合并圖示
四、合并模式
? ? ? ?4.1合并?編輯
? ? ? ? 4.2變基
五、bug分支
? ? ?? ?5.1背景建立
????????5.2解決步驟
? ? ? ????????? 5.2.1保存dev2工作區內容
? ? ? ? ? ? ? ? ?5.2.2建立bug分支,修改bug并提交與合并到主分支
? ? ? ? ? ? ? ? ?5.2.3新功能研發,合并到研發分支測試
? ? ? ? ? ? ? ? ?5.2.4合并到主分支
? ? ? ? ? ? ? ? ?5.2.5流程圖示
六、強制刪除分支
一、理解分支
? ? ? ? 1.1圖示
? ? ? ? ? ? ?我們可以利用分支在同一時間進行多人并行工作,最后合并到主分支上進行最終管理?
?????????1.2 打印倉庫下有哪些分支
git branch
? ? ? ? 1.3創建分支
git branch branchname
? ? ? ? 1.4HEAD與切換分支
? ? ? ? 前文提到HEAD指向分支,這里明確HEAD指向主分支(帶*的)
//切換HEAD所指的的主分支
git checkout branchname
? ? ? ? 1.5合并分支
//將branchname合并到當前分支
git merge brancname
? ? ? ? 1.6流程圖理解
二、刪除分支
? ? ? ? 不能在當前分支刪除自己
git branch -d brancename
三、合并分支沖突
? ? ? ? 3.1.問題導入
????????????????發生沖突
???????
? ? ? ? 3.2.解決
? ? ? ? 手動解決并進行一次提交操作
??????????沖突文件內容,手動修改后提交
????????3.3合并圖示
四、合并模式
? ? ? ?4.1合并
git checkout main # 切換到目標分支
git merge feature-branch # 合并源分支
? ? ? ? 4.2變基
??
git checkout feature-branch # 切換到源分支
git rebase main # 變基到目標分支
五、bug分支
? ? ?? ?5.1背景建立


????????5.2解決步驟
? ? ? ????????? 5.2.1保存dev2工作區內容
? ? ? ? ? ? ? ? ????????由于我們要從master建立bug分支進行修改,所以我們要保存dev2工作區內容,防止被新分支修改(dev2上內容為臨時內容會被master看見)
//在dev2分支上:
git stash
? ? ? ? ? ? ? ? ? ?5.2.2建立bug分支,修改bug并提交與合并到主分支
git checkout master
git checkout -b fix_bug
git add .
git commit -m ""
git cheackout master
//--no-ff No Fast Forward模式
git merge --no-ff branchname
? ? ??
? ? ? ? ? ? ? ? ? ? ? ? 5.2.3新功能研發,合并到研發分支測試
git stash pop
//恢復工作區內容
git merge --no-ff master
//合并到研發分支測試
git checkout master
git merge --no-ff dev2
? ? ? ? ? ? ? ? ? ? ? ? 5.2.4合并到主分支
????????
? ? ? ? ? ? ? ? ? ? ? 5.2.5流程圖示
六、強制刪除分支

//使用
git branch -D branchname