• 分支的作用

    • 协同开发
    • 开发失败不会对主分支有影响
    • 大胆创新
    • 修复bug不会使得服务器停止工作(24小时网站而言)

  • 创建新分支

    • 在新建git,也就是git init时会自动创建master分支,也就是主分支
    • 创建新分支命令
git banch 新分支名称
  • 查看所有分支
git branch -v
  • 查看当前分支
git status
  • 效果:
  • 切换分支
git checkout 分支名称(Tab键可以补全名字)
  • 效果
  • 合并分支
    • 当你某个分支写了一波代码时或则修改时,提交操作不变,照样是添加,提交。
    • 但是注意,每个分支是独立存在的,要是想将更改应用到某个分支(不一定是主分支,也可以是多个分支的某一个),就要执行合并操作。
    • 合并命令
git merge 分支名
  • 注意,你要站在要合并分支的角度上执行该命令
  • 也就是B要被A合并,A是大哥,B是小弟,大哥要吃掉小弟,要站在大哥的角度说话才行。
  • 所以一般要先git checkout 分支名切换回大哥分支,才能执行合并操作。

分支合并冲突

  • 有两个分支AB,都有good.txt文件。A修改good.txt第三行加了内容A branch chage,B修改good.txt第三行加了B branch change

  • 即两个分支修改了同一处地方,并且内容不一致

  • 两个分支有一方要合并另一方时,会产生冲突:选择哪一方呢

  • 解决方案:

  • 流程如图:

  • 当前有分支AB

  • 切换到分支A,并修改good.txt文件

  • 提交到本地库

  • 同理切换到分支B,修改good.txt

  • 提交到本地库
git add good.txt
git commit -m "B change"

  • B执行合并A操作,即B merge A

  • 就会出现merge失败的情况,并且进入手动合并状态(红框部分)

  • 打开 good.txt文件看一下

  • 第三行变成了这样:

  • 该怎么办呢?

  • 当然是协商啦,面对面交流,放下板凳!

  • 然后删除特殊符号,保留想要的内容

  • addcommit就可以回到正常状态了

  • 注意,此时git commit后面不能带文件名,别问,咱也不懂

  • 回到正常状态,冲突解决!!

git学习(五)分支操作和解决冲突相关推荐

  1. Git常用命令——分支操作

    Git常用命令--分支操作 分支操作 git branch 列出,创建或者删除分支 git branch <branchName> :创建一个分支 git branch -d <br ...

  2. Git初学札记(四)————Git Push的常规操作与Pull冲突解决

    目录 引言 Git命令行的远程Push EGit Push操作中的冲突问题 同步 工作区与本地库同步 工作区与远程库同步 图标 重点 引言 在团队开发当中,Git Push是多人协作环节中的最重要的一 ...

  3. 【工具篇】git常用命令--关于分支切换、解决冲突覆盖

    目录 关于分支 解决冲突覆盖代码 提交记录码获取的地方: 关于分支 git branch 查看当前分支 git checkout -b dev-wangxiaobo 新建本地分支 git branch ...

  4. git合并分支时如何解决冲突

    在项目开发过程,我们合并分支时经常会碰到冲突的问题,下面通过一个简单的例子演示下冲突是如何产生的以及如何去解决冲突. 1.冲突的产生 1.1.主干分支代码 在主干分支有两个文件 main.cpp #i ...

  5. Git命令及分支操作

    目录 一.Git常用命令 1.设置用户签名 2.初始化本地库 3.查看本地库状态 4.添加暂存区 5.提交本地库 6.修改文件 7.历史版本 7.1.查看历史版本 7.2.版本穿梭 二.Git分支操作 ...

  6. git branch常用分支操作

    文章目录 前言 远程仓库 建立联系 本地创建文件夹并进入 初始化仓库 临时插播好奇心(不在流程中) 查询远程仓库 与远程仓库建立对应关系 第一个分支 添加README文件 查询当前分支 将分支推送到远 ...

  7. Git 基础知识--分支操作

    分支操作 几乎所有的版本控制系统都支持分支.使用分支意味着你可以把你的工作从开发主线上分离出来,以免影响开发主线. 在分支中,在基于主分支已有代码的基础上,你可以进行任意的操作,并且完全不用担心会污染 ...

  8. Git复习(四)之解决冲突

    解决冲突 合并分支往往也不是一帆风顺的 假设:我们从master创建了一个新的分支feature1更改了最后一行提交,我们切换到master分支也更改了最后一行提交,现在,master分支和featu ...

  9. svn 分支上新增文件合并发生冲突_SVN的使用、分支合并及解决冲突详解

    一.什么是SVN SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS. 二.SVN的下载安装 安装完不要忘记重启 ...

最新文章

  1. JavaCore/HeapDump文件及其分析方法
  2. 赠书|零压力入门算法的顶流畅销书《漫画算法》
  3. Windows下将MySQL5.5升级为MySQL5.7
  4. 多次执行echarts时出现 there is a chart instance already initialized on the dom
  5. Java创建多线程的三种方法
  6. 20220202--CTF刷题MISC方向--第7题--编码
  7. spring-DataSource
  8. 消消乐实现下坠_JavaScript有多强大,实现消消乐小游戏
  9. coreboot学习10:coreboot第一阶段学习小结
  10. 线性判别分析(Linear Discriminant Analysis ,简称LDA)
  11. php生成成语,在线成语词典 洪恩在线成语词典小偷程序php版
  12. vscode中文vsix_离线安装vscode vsix插件
  13. Mac电脑无线键盘失灵的解决方法
  14. 项目2胖子不想说体重
  15. 认知篇---嵌入式工程师的未来发展前景怎么样
  16. 姿态估计1-02:FSA-Net(头部姿态估算)-源码训练测试-报错解决
  17. wordpress 服务器_如何将WordPress从本地服务器移动到实时站点(2种方法)
  18. 使用java.awt.Robot实现java版的自动点击事件
  19. U盘容量变小?这儿有解决方法!
  20. 宏记录器 Macro Recorder 2.0 注册版

热门文章

  1. Jquery.dataTables分页排序参数详解
  2. 数据库操作update,和insert为什么会有int的返回值
  3. Django DRF认证组件/权限组件/序列化组件综合总结(完整版)
  4. MySQL中的主键约束和外键约束
  5. URAL 1820. Ural Steaks(数学啊 )
  6. 企业用好大数据只需这6招
  7. 显示滚动条后,table 表头与内容不对齐,JS脚本控制
  8. android多Modle统一配置Gradle
  9. Java基础之数组练习
  10. Android模拟器图形绘原理(二十二)