git基础使用--4---git分支和使用

git基础使用--4---git分支和使用

1. 按顺序看

-git基础使用--1--版本控制的基本概念

-git基础使用--2--gti的基本概念

-git基础使用--3---安装和基本使用

2. 什么是分支

  • 简单理解就是副本
  • 在版本控制过程中,为了推进多个任务,我们可以为每个任务创建一个单独的分支,分支可以脱离主支进行开发,开发完之后再进行合并,这样就可以实现并行开发。
  • 举个例子,我们在希望在1.1版本的基础上,增加点赞,收藏,分享和评论四个功能形成1.2版本。那我们就把1.1创建四个分支,分别给甲乙丙丁四个人,分别开发点赞,收藏,分享和评论四个功能。四个人开发完之后,把代码一合并,就形成了1.2版本。
  • 这样的好处是,如果某个分支的功能开发失败或者有bug直接删除那个分支就行,其他分支不受影响

3. 分支的基本操作

命令 操作含义
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支名合并到当前分支上

4. 分支的基本操作

4.1 查看分支

  • git branch -v

4.2 创建分支

  • git branch 分支名
js 复制代码
git branch login-part
  • 创建完之后我们再查看分支

4.3 切换分支

  • git checkout 分支名
  • 我们目前在master分支上,现在切换到login-part分支上
js 复制代码
git checkout login-part
  • 已经切换到login-part分支上了

  • 我们在login-part分支上,对test.txt做一些修改

  • 然后我们添加到暂缓区域,并且提交到本地库

js 复制代码
git add test.txt
git commit -m 'login-part first commit' test.txt
  • 这个时候login-part分支中的test.txt已经修改,但是master上还没有修改,我们需要把login-part分支上的修改合并到master上
  • 我们先切换到master分支上
js 复制代码
git checkout master
  • 我们查看test.txt,发现确实没有刚才修改的内容
  • 闲杂合并
js 复制代码
git merge login-part
  • 再打开test.txt,发现合并了

4.4 合并冲突

  • 啥叫冲突,为啥会产生冲突呢

  • 有这么个情况,就是针对同一个文件的同一个部位,不同的分支做了不同的修改,这样在合并的时候,就不知道保留谁去掉谁,比如我们在master分支再test.txt的末行加上一句

  • 并提交

  • 然后切换到login-part分支

  • 然后修改test.txt,在末行加上一句

  • 然后也提交

  • 这个时候,login-part的末行是make conflic from login-part;master的末行是make conflic from master

  • 假设我们要把login-part合并到master上,因为是主分支么

  • 我们先切换到master,

  • 然后执行合并 git merge login-part

  • 这里告诉我们产生冲突了,需要我们手动去决定一下怎么保留,我们打开test.txt看一下

  • 这里我们手动删除特殊符号,保留链各个修改内容,表示两个修改都留下

  • 这里我们做了修改了,需要提交一下,提交的时候不需要带文件名

  • 这时候master分支的修改技术了,但是login-part分支还没有修改,我们再把master分支合并到login-part分支上

  • 切换login-part分支,git checkout login-part

  • 合并,git merge master

  • 发现login-part分支的test.也同步了修改

相关推荐
自来也_1 小时前
Git配置代理
git
Jooolin16 小时前
【编程史】Git是如何诞生的?这可并非计划之中...
linux·git·ai编程
Lw老王要学习21 小时前
VScode 使用 git 提交数据到指定库的完整指南
windows·git·vscode
去旅行、在路上21 小时前
Git & Svn
git·svn
abcnull1 天前
github中main与master,master无法合并到main
git·github
养意1 天前
git提交代码和解决冲突修复bug
git·bug
码农黛兮_462 天前
Git 常用命令大全
git
一弓虽2 天前
git 学习
git·学习
疯狂的沙粒2 天前
如何通过git命令查看项目连接的仓库地址?
大数据·git·elasticsearch
qq_254617772 天前
Gerrit+repo管理git仓库,如果本地有新分支不能执行repo sync来同步远程所有修改,会报错
git