Git如何操作本地分支仓库?

基本使用TortoiseGit 操作本地仓库(分支) 

分支的概念

几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,避免影响开发主线。多线程开发,可以同时开启多个任务的开发,多个任务之间互不影响。

为何要使用分支

先看单线程开发

思考如下现象

    10月1日 业务部门提出需求 : 今年元旦3天做2个促销活动。

  • 12月31 号上线活动1
  • 1月4号上线活动2 ,同时要求撤销活动1

    你所在部门领导为了保证能顺利完成,要求 11月15号完成上述连个功能的开发工作。

此时作为开发人员:我要面临两个文件,活动1 的代码,即要存在(12月31 要用)又要不存在(1月4 号要求删除),我们怎么做?

显然比较棘手,如果使用分支(可以理解为将代码复制一份)将很好解决。

创建分支

到现在为止,我们一直使用的时主分支(master)。

在主分支上操作创建分支

分支的查看切换

查看分支

查看版本分支图,此时我们看到有两个分支。

当然,我们可以创建多个分支。

可以看到多个分支的图形

切换分支

右键--> 检出

分支的合并与删除

合并

我们将代码切换到分支1,然后写属于需求1 的代码并提交。

当我们把需求1 开发完毕如何把需求1 的代码合并到主分支呢?

  • 切换到 主版本
  • 右键 合并即可将需求1 写的代码合并至主分支

此时我们看到代码自动合并到了master分支。

删除分支

冲突的处理​ 
冲突的概念

现象演示   

开发人员A 开发需求1,开发了一个工具类 MathUtil,里面第一行写了一个方法 add(int [] args)。

同时开发人员B 开发需求2,开发了一个工具类 MathUtil,里面第一行写了一个方法 add(int a int b)。

他们在互相不知道对方需求的情况下同时提交了代码到自己的分支。

思考此时如果我们把需求1 和需求2 同时都合并到主分支上,主分支的 工具类 MathUtil 的第一行应该使用谁的代码?

此时主分支是不能智能判断第一行使用谁的代码,合并时会报错,我们叫做冲突。

如何处理冲突

分析一下冲突的原因:

    开发人员之间彼此没有沟通导致的同一个时间节点修改了同一个地方的代码,合并是冲突。

思考:

    我们能直接把某个开发人员开发的代码删除吗?

显然不能

    所以在处理冲突时,第一步应该时找开发另一个需求的人员沟通,之后才是处理冲突。

  • 选中冲突的文件(带黄色感叹号的文件都是冲突的文件,如果有多个需要逐一处理)
  • 右键--> 编辑冲突
  • 处理完毕后,标记已解决

 

tag 标签

标签的概念

如果你的项目达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以给它打上标签(tag)。

比如说,我们想为我们的项目发布一个"1.0"版本。我们给最新一次提交打上(HEAD)"v1.0"的标签。

标签可以理解为项目里程碑的一个标记,一旦打上了这个标记则,表示当前的代码将不允许提交。

标签的创建(tag)

标签的创建和分支的创建操作几乎一样。

标签的切换与删除

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/49114.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无涯教程-PHP - 全局变量函数

全局变量 与局部变量相反,可以在程序的任何部分访问全局变量。通过将关键字 GLOBAL 放置在应被识别为全局变量的前面,可以很方便地实现这一目标。 <?php$somevar15;function addit() {GLOBAL $somevar;$somevar;print "Somevar is $somevar";}addit(); ?> …

Cohere API 之旅

Cohere API之旅 0. 背景1. Cohere提供的模型和函数2. Cohere 客户端3. Co.Generate API4. Co.Embed API5. Co.Classify API6. Co.Tokenize API7. Co.Detokenize API8. Co.Detect_language9. Co.Summarize API10. Co.Rerank API 0. 背景 大约两个月前有一份新闻稿。 https://w…

合并两个有序数组【leetcode】

1. 题目&#xff1a; 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#xff0c;使合并后的数组同样按 非递减顺序 排列。 注意&#xff1a;最终&…

测试框架pytest教程(9)跳过测试skip和xfail

skip无条件跳过 使用装饰器 pytest.mark.skip(reason"no way of currently testing this") def test_example(faker):print("nihao")print(faker.words()) 方法内部调用 满足条件时跳过 def test_example():a1if a>0:pytest.skip("unsupported …

基于Redis的BitMap实现签到、连续签到统计(含源码)

微信公众号访问地址&#xff1a;基于Redis的BitMap实现签到、连续签到统计(含源码) 推荐文章&#xff1a; 1、springBoot对接kafka,批量、并发、异步获取消息,并动态、批量插入库表; 2、SpringBoot用线程池ThreadPoolTaskExecutor异步处理百万级数据; 3、基于Redis的Geo实现附…

python小脚本——批量将PDF文件转换成图片

语言&#xff1a;python 3 用法&#xff1a;选择PDF文件所在的目录&#xff0c;点击 确定 后&#xff0c;自动将该目录下的所有PDF转换成单个图片&#xff0c;图片名称为: pdf文件名.page_序号.jpg 如运行中报错&#xff0c;需要自行根据报错内容按照缺失的库 例如&#x…

ORB-SLAM系列算法演进

ORB-SLAM算法是特征点法的代表&#xff0c;当前最新发展的ORB-SLAM3已经将相机模型抽象化&#xff0c;适用范围非常广&#xff0c;虽然ORB-SLAM在算法上的创新并不是很丰富&#xff0c;但是它在工程上的创新确实让人耳目一新&#xff0c;也能更好的为AR、机器人的算法实现落地。…

CF 514 C Watto and Mechanism(双哈希)

CF 514 C. Watto and Mechanism(双哈希) Problem - 514C - Codeforces 大意&#xff1a;给出 n 个字典串 &#xff0c;现给出 m 个查询串 &#xff0c; 问是否存在字典串与当前查询串仅差一个字母。每个串仅包含 {‘a’ , ‘b’ , ‘c’ } 三个字母 。 思路&#xff1a;考虑…

Linux编程:在程序中异步的调用其他程序

Linux编程:execv在程序中同步调用其他程序_风静如云的博客-CSDN博客 介绍了同步的调用其他程序的方法。 有的时候我们需要异步的调用其他程序,也就是不用等待其他程序的执行结果,尤其是如果其他程序是作为守护进程运行的,也无法等待其运行的结果。 //ssss程序 #include …

操作教程|通过1Panel开源Linux面板快速安装DataEase

DataEase开源数据可视化分析工具&#xff08;dataease.io&#xff09;的在线安装是通过在服务器命令行执行Linux命令来进行的。但是在实际的安装部署过程中&#xff0c;很多数据分析师或者业务人员经常会因为不熟悉Linux操作系统及命令行操作方式&#xff0c;在安装DataEase的过…

LeetCode42.接雨水

这道题呢可以按列来累加&#xff0c;就是先算第1列的水的高度然后再加上第2列水的高度……一直加到最后就是能加的水的高度&#xff0c;我想到了这里然后就想第i列的水其实就是第i-1列和i1列中最小的高度减去第i列的高度&#xff0c;但是其实并不是&#xff0c;比如示例中的第5…

【蓝桥杯】 [蓝桥杯 2015 省 A] 饮料换购

原题链接&#xff1a;https://www.luogu.com.cn/problem/P8627 1. 题目描述 2. 思路分析 小伙伴们可以看看这篇文章~ https://blog.csdn.net/m0_62531913/article/details/132385341?spm1001.2014.3001.5501 我们这里主要讲下方法二的推导过程&#xff1a; 列方程。 设最…

企业数字化转型需要解决哪些问题?

随着信息技术的不断发展和应用&#xff0c;企业数字化转型已成为提高竞争力和实现可持续发展的必经之路。合沃作为一家专注于为企业提供工业物联网产品与解决方案的企业&#xff0c;拥有丰富的经验和技术实力&#xff0c;正致力于助力企业实现数字化转型。本文将探讨企业数字化…

流的基本概念

流的基本概念 Streaming 101与Streaming 102原文网页 文章目录 流的基本概念术语什么是流无界数据无界数据处理有界数据批处理引擎流引擎低延迟、近似、推测结果正确性时间推理工具 数据处理模式使用经典批处理引擎进行有界数据处理用经典批处理引擎通过临时固定窗口进行无界数…

物联网无线通信方式总结

本文主要内容(一些物联网无线通信方式) 本文将介绍一些物联网无线通信方式的技术特点、底层调制方式和主要应用场景物联网无线通信方式是指利用无线技术实现物体之间的信息交换和网络连接的方式物联网无线通信方式的选择需要考虑多种因素&#xff0c;如传输距离、功耗、数据速…

天翼物联、汕头电信与汕头大学共建新一代信息技术与数字创新(物联网)联合实验室

近日&#xff0c;在工业和信息化部和广东省人民政府共同主办的2023中国数字经济创新发展大会上&#xff0c;天翼物联、汕头电信与汕头大学共建“新一代信息技术与数字创新&#xff08;物联网&#xff09;”联合实验室签约仪式举行。汕头大学校长郝志峰、中国电信广东公司总经理…

字符集与字符编码

目录 一、字符集概述二、Unicode三、Unicode字符集四、Unicode编码规则五、Unicode字符编码规则 UTF-8六、Unicode 字符编码规则 UTF-16七、Unicode 字符编码规则 UTF-32八、UTF 字节顺序标记(BOM)九、Windows 代码页十、Windows(ANSI) 字符集十一、GB2312、GBK、GB18030 一、字…

leetcode原题: 堆箱子(动态规划实现)

题目&#xff1a; 给你一堆n个箱子&#xff0c;箱子宽 wi、深 di、高 hi。箱子不能翻转&#xff0c;将箱子堆起来时&#xff0c;下面箱子的宽度、高度和深度必须大于上面的箱子。实现一种方法&#xff0c;搭出最高的一堆箱子。箱堆的高度为每个箱子高度的总和。 输入使用数组…

elelementui组件

一、按钮 1、按钮样式 使用type、plain、round和circle属性来定义 Button 的样式。 2、主要代码 <el-row><el-button>默认按钮</el-button><el-button type"primary">主要按钮</el-button><el-button type"success">…

SQL函数和过程

一、存储过程概述 1.1 理解 含义&#xff1a;存储过程的英文是 Stored Procedure 。它的思想很简单&#xff0c;就是一组经过 预先编译 的 SQL 语句 的封装。 执行过程&#xff1a;存储过程预先存储在 MySQL 服务器上&#xff0c;需要执行的时候&#xff0c;客户端只需要向服…