git操作笔记(二)分支操作

329 阅读2分钟

git分支操作

4.1 什么是分支

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。(分支底层其实也是指针的引用)

4.2 分支的好处

同时并行推进多个功能开发,提高开发效率。

各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

4.3 分支的操作

命令名称作用
git branch 分支名创建分支
git branch -v查看分支
git checkout 分支名切换分支
git merge 分支名把指定的分支合并到当前分支上
4.3.1 创建本地分支
git checkout -b dev
4.3.2 查看分支
  1. 基本语法

    git branch -v

  2. 案例实操

    image.png

4.3.3 创建分支
  1. 基本语法

    git branch 分支名

  2. 案例实操

    image.png

4.3.4 修改分支

在mster分支上修改 hello.txt 文件

image.png

hot-fix分支并未修改

4.3.5 切换分支

git checkout 分支名

git checkout hot-fix

修改hello.txt同样位置并提交

image.png

4.3.6 合并分支
  1. 基本语法

    git merge 分支

  2. 案例实操 在 master 分支上合并 hot-fix 分支

    image.png

先切换到master上,把hot-fix分支合并到master分支上。

4.3.7 产生冲突

冲突产生的表现:后面状态为MERGING

image.png

冲突产生的原因:

合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git无法替我们决定使用哪一个。必须人为决定新代码内容。

查看状态(检测到有文件两处修改)

image.png

4.3.8 解决冲突
  1. 编辑有冲突的文件,删除特殊符号,决定要使用的内容

    特殊符号: <<<<<<<HEAD 当前分支的代码 ====== 合并过来的代码 >>>>>>> hot-fix

  2. 添加到暂存区

  3. 执行提交(注意:此时使用 git commit 命令时不能带文件名

    image.png

4.3.9 创建分支和切换分支图解

image.png

master、hot-fix 其实都是指向具体版本记录的指针。当前所在的分支,其实是由HEAD决定的。所以创建分支的本质就是多创建一个指针。 HEAD如果指向master,那么我们现在就在master分支上。 HEAD如果执行hot-fix,那么我们现在就在hot-fix分支上。

4.3. 10 重命名远程分支
  1. 把远程代码更新到本地

    git pull
    
  2. 删掉远程分支

    git push origin --delete release-20210630-V3.6.2
    
  3. 重命名本地分支

    git branch -m realease-20210630-V3.6.2 release-2021630-V3.8.1
    
  4. 把本地分支推到远程

    git push origin release-20210630-V3.8.1
    
查看本地分支对应的远程分支
git branch -vv