Git的原理和使用(五)

embedded/2024/10/22 9:47:25/

场景:

        目标:远程master分支下新增function1和function2文件;

        实现:由开发者1新增function1,由开发者2新增function2;

        条件:在不同分支下协作完成;各自让某一个功能私有某一个分支;

1.创建分支

1.1开发者1

        本地创建:

1、在feature1分支下创建func1文件:

2、将本地分支push到中央:

        此时本地和中央没有建立连接,所以使用复杂的指令:

        此时将本地feature-1分支的文件推送到中央的feature-1分支上去;

1.2 开发者2

        1、首先确保我们的master分支上的文件和重要保持先进性,故此拉取中央的文件;

        2、创建分支feature-2和文件

        3、推送到中央

         如下所示:

        分支结构如下所示:

一般来说,一个分支代表一个功能; 

2. 双人一开发者

        此时开发者2被裁了,开发者2的内容就需要开发者1来进行操作;

1、当前的开发者一只能看到feature-1分支,所以要进行拉取中央的文件:

        我们此处没有建立连接,但是可以直接使用短指令进行拉取?

        1、git pull拉取的是分支内内容

        2、拉取的是远程仓库的内容,所以分支2的内容也会被之间拉取下来;

2、让本地的feature-2和远程的feature-2建立连接:

3、进入文件,帮助同时进行开发:

 

3、此时开发者2有回来了进行开发:

打开文件如下:

        所以要进行拉取:使用git pull

        文件由于没有建立连接,所以没有被短指令拉取成功:

         git branch --set-upstream-to=origin/feature-2 feature-2

        此时我们的文件如下所示:

        开发者2进行最后的修改之后,进行一系列操作,最后在推送:

        最终的中央仓库如下所示:

        此时两个分支都完成了自己的开发,最后将两个分支都合并到master分支上;

3. 合并两个分支

3.1 master合并feature-2

        使用pr的方式:

进行审查通过,在之后就是合并分支:

点击接受:

        此时的状态是已合并;

3.2 合并feature-1

        此时分支状态如下:

        首先,为了防止两个分支直接合并有冲突,所以让1分支和m分支首先合并到1分支上;

        其次,没冲突更好,有冲突的话将其解决在1分支上;

        然后,将合并的1分支和到m分支上;

        首先切换到m分支上,将其拉取中央最新的内容,其次回到f1分支,将m分支合并,出现如下所示,则合并没有问题:

退出该页面之后会自动进行合并:

        进行push;

        此时来到中央进行最后一步合并操作;

3.3 中央操作

        流程和第一步一样了;

        我们在远程删了其他分支之后,在本地看到被删除的分支:

        git remote show origin:展示远程多分支的信息:

        进行修剪:

   

ps:本文到这里就结束了,谢谢观看!!!


http://www.ppmy.cn/embedded/129527.html

相关文章

MySQL数据库操作——(4)

目录 8 视图 8.1 常见的数据库对象 8.2 视图概述 8.2.1 为什么使用视图? 8.2.2 视图的理解 8.3 创建视图 8.3.1 创建单表视图 8.3.2 创建多表联合视图 8.3.3 基于视图创建视图 8.4 查看视图 8.5 更新视图的数据 8.5.1 一般情况 8.6 修改、删除视图 8.…

Vue 项目中 Webpack 常见问题详解

前言 在Vue.js项目中,Webpack 作为打包工具,处理各种静态资源和模块化的代码打包需求。尽管 Webpack 在 Vue CLI 项目中已经配置好了一些默认行为,但开发者在实际项目中仍然会遇到许多与资源管理、public 和 assets 目录、require 语法等相关…

使用verilog设计实现的数字滤波器(低通、高通、带通)及其仿真

以下是一个简单的使用Verilog设计数字滤波器(以有限脉冲响应(FIR)滤波器为例,实现低通、高通、带通滤波器)的基本步骤和代码框架: 一、FIR滤波器原理 FIR滤波器的输出 y [ n ] y[n] y[n] 是输入信号

大数据治理:从挑战到最佳实践

引言 随着大数据技术的快速发展,各类组织和企业积累了海量的数据资产。然而,数据的复杂性、异构性和庞大规模也带来了数据管理和利用的诸多挑战。为了确保数据的高效利用、安全性以及合规性,大数据治理应运而生。大数据治理不仅仅是管理数据的存储和处理,它更是一项系统性…

【网络安全】从NA到P1,我是如何扩大思路的?

未经许可,不得转载。 文章目录 正文正文 在这篇文章中,我将向大家展示一个我发现的漏洞,该漏洞利用了一个硬编码的 Basic 认证头,获取了管理员权限。 首先,假设公司域名为“target.com”。 第一步是使用多种工具(如 Amass、subfinder、findomain 等)收集与该组织相关…

期权懂|期权止损策略如何平衡风险与收益?

本期让我懂 你就懂的期权懂带大家来了解,期权止损策略如何平衡风险与收益?有兴趣的朋友可以看一下。期权小懂每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 期权止损策略如何平衡风险与收益? 期权止损…

微信小程序canvas 生成二维码图片,画图片,生成图片,将两个canvas结合并保存图片

需求实现步骤如下 先定义两个canvas一个canvas myQrcode画二维码的图片另一个canvas mycanvas画一个背景图,并把二维码画到这个canvas上,mycanvas这个canvas生成一张图片,返回图片的临时路径最后保存图片到手机 首先wxml,新版微信小程序can…

批量处理文件权限:解决‘/usr/bin/chmod: Argument list too long’的有效方法

批量处理文件权限:解决‘/usr/bin/chmod: Argument list too long’的有效方法 错误原因解决方案1. 分批处理2. 使用xargs3. 增加ARG_MAX限制4. 使用脚本 结论 在Linux系统中,有时你可能会遇到这样的错误消息:“/usr/bin/chmod: Argument lis…