03-Git分支操作

0. Git分支操作

0.1 什么是分支

在版本控制过程中,使用多条线同时推进多个任务。这里说的多条先就是多个分支

在工作中,通常会多个任务由多个同事同事开始开发,一个功能一个分支,开发完成之后,合并到主分支,最终形成完整的功能系统。

0.2 分支的好处

  • 同时多个分支并行开发,相互独立,互不影响,提高开发效率
  • 如果一个分支功能开发失败,功能被抛弃,那么直接删除这个分支就可以了,对其他分支不会产生任何影响

0.3 分支的操作

分支操作由很多,比如查看,创建,切换分支,合并分支,处理冲突,解决冲突

  • 查看分支

    git branch

  • 创建分支

    git branch 分支名称

  • 切换分支

    git checkout 分支名称

  • 合并分支

    git merge 要合并的分支

  • 解决冲突

    本地修改文件,之后添加,提交即可

当前Git状态
请添加图片描述

1. 查看分支

使用git branch查看分支

git branch

请添加图片描述

2. 创建分支

使用git branch 分支名称创建分支

git branch branch01
git branch

请添加图片描述

3. 切换分支

使用git checkout 分支名称,切换到对应分支

git branch
git checkout branch01
git branch

请添加图片描述

4. 合并分支

使用git merge 要合并的分支合并分支

创建一个文件Demo3.txt,添加,提交。切换回master,合并branch01分支上的内容到master

vim Demo3.txt
git add Demo3.txt
git commit Demo3.txt -m "添加文件Demo3.txt"
git reflog

请添加图片描述

# 切换到主分支,查看并没有Demo3.txt文件的提交记录
git checkout master
git reflog

请添加图片描述

# 合并到master分支
git merge branch01
git reflog

请添加图片描述

5. 合并冲突

如果是多个分支同时更改了同一个文件的同一行,在合并分支的时候,就会产生冲突,需要解决冲突

以刚刚添加的这个Demo3.txt,master分支和branch01分支都进行第二行的更改,然后从branch01合并到master分支,就会产生冲突

# 切换到master分支,编辑Demo3.txt文件的第二行,添加,提交
git checkout master
vim Demo3.txt
	aabbcc
	aaa edit by master
git add Demo3.txt
git commit Demo3.txt -m 'edit by master'
git reflog

请添加图片描述

# 切换到branch01分支,编辑Demo3.txt文件的第二行,添加,提交
git checkout branch01
vim Demo3.txt
	aabbcc
	bbb edit by branch01
git add Demo3.txt
git commit Demo3.txt -m 'edit by branch01'
git reflog

请添加图片描述
这个时候,合并分支就会发生冲突

git check master
git merge branch01

请添加图片描述
合并冲突就是在本地对文件进行编辑,通过团队沟通,确定合并方案,完了添加,提交。即可正常解决冲突
请添加图片描述

git add Demo3.txt
# 注意,合并冲突,这儿不能加文件名
git commit -m "合并冲突"
git reflog

请添加图片描述

6. 如何避免冲突

  • 如非必要,不要两个分支修改同一个文件
  • 如果不可避免,先把master分支的内容合并到当前的branch01分支,合并完冲突之后,再提交到master,这样可以减少对master分支的影响

7. 删除本地分支

使用git branch -d 本地分支名称删除本地分支

使用git branch -D 本地分支名称强制删除本地分支

git branch
git branch -d branch01
git branch

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YgTfJaVM-1629027224217)(images/image-20210813101301837.png)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值