Gitlab合并代码并解决冲突演示


天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


郎骑竹马来,绕床弄青梅。
同居长干里,两小无嫌猜。
——《长干行》


文章目录

  • 将两个远程分支代码同步并解决冲突
    • 1. Create merge request
      • 1.1 创建合并请求
      • 1.2 合并请求标题和描述填写
      • 1.3 取消勾选
      • 1.4 授权并合并
      • 1.5 合并完成
      • 1.6 合并未完成-需解决冲突
    • 2. New merge request
      • 2.1 创建合并请求
      • 2.2 分支选择
      • 2.3 合并信息填写
      • 2.4 取消勾选
      • 2.5 授权并合并
      • 2.6 冲突解决
      • 2.7 代码选择
      • 2.8 再次合并
      • 2.9 合并成功
    • 3. 冲突解决
      • 3.1 制造冲突
      • 3.2 合并及解决冲突
      • 3.3 合并成功
      • 3.4 查看合并结果


参考文章:GitLab同步代码与解决代码冲突(项目组代码提交、代码同步)


有两个远程分支,dev-jwh分支和默认的main分支
本地开发的代码已上传到远程分支dev-jwh上
现在将dev-jwh远程分支的代码同步到远程分main上

将两个远程分支代码同步并解决冲突

在gitlab同步两个远程分支的代码时,有两种情况
一种是提交后在界面出现提示Create merge request
一种是没有提示,没提示时则New merge request

1. Create merge request

上面我们将dev-jwh本地代码同步到远程dev-jwh分支上了,此时远程的main分支还没有同步
将远程分支dev-jwh上的代码同步到远程分支main上
可以在Gitlab平台上操作
在提交代码到远程仓库之后,gitlab平台的Merge request部分就会收到提交信息
项目左侧栏Merge requests

1.1 创建合并请求

选择Create merge request进行同步操作
当然,如果这里没有上图中的提示(默认main分支外的分支提交会以请求的形式出现在上图中的位置提示)
可到下一小节<2. New merge request>进行操作
在这里插入图片描述

1.2 合并请求标题和描述填写

默认内容如下
可在Title填写请求的标题
Description填写请求描述
当然这里可以默认即可
在这里插入图片描述

1.3 取消勾选

注意,
Merge options中的第一项Delete source branch when merge request is accepted默认是勾选的
一定要取消勾选
然后点击Create merge request创建请求,从dev-jwh同步到main
在这里插入图片描述

1.4 授权并合并

然后依次选择ApproveMerge即可(其余内容不用填写)点击Merge后即可实现同步代码到远程main分支
在这里插入图片描述

1.5 合并完成

执行后如果代码没冲突则不需要解决,代码同步完成,如下图
在这里插入图片描述

1.6 合并未完成-需解决冲突

如果有冲突则会在界面出现Resolve conflicts
此时需要点击Resolve conflicts解决冲突,解决冲突可跳转到第3小节:3. 冲突解决
在这里插入图片描述

2. New merge request

2.1 创建合并请求

当界面没有提交的合并请求时,可以在右上角新建合并请求,如下图,选择New merge request进行同步操作
在这里插入图片描述

2.2 分支选择

选择要合并的分支,左边是当前分支,右边是要合并到的分支默认main
在这里插入图片描述
左边我们选择我们刚刚提交的dev-jwh分支,然后点Compare branches and continue对比两个分支然后继续
在这里插入图片描述

2.3 合并信息填写

这里可以对这次合并做一些内容设置,如给这次修改起个名字,然后写点描述
在这里插入图片描述

2.4 取消勾选

然后在Merge options中取消勾选Delete选项,默认是勾选的,如果不取消勾选,则合并后我们的分支dev-jwh则会被删除
取消勾选后,点Create merge request创建合并
在这里插入图片描述

2.5 授权并合并

这里我们先授权点Approve,也可以之前就点,我们这里点也没问题
在这里插入图片描述

2.6 冲突解决

然后可以看到有Resolve conflicts表示有冲突需要解决,点它就行
在这里插入图片描述

2.7 代码选择

这里可以看到有两部分,一部分是Use ours表示dev-jwh分支,一部分是Use theirs表示main分支
选择用哪个分支的代码进行覆盖,我们使用自己的dev-jwh

Use ours
然后点Commit to source branch将代码合并任务提交
在这里插入图片描述

2.8 再次合并

然后会跳回到merge界面,再次点击Merge即可,注意,这里再确认一下Delete source branch选项是未勾选的
在这里插入图片描述

2.9 合并成功

Merge之后如果没问题,界面如下表示合并成功
在这里插入图片描述

3. 冲突解决

3.1 制造冲突

我在两个远程分支的某个代码片段改成不同的内容
dev-jwh分支的内容是列表数量
main分支的内容分是列表大小

当两个分支的代码冲突时,解决如下

3.2 合并及解决冲突

有冲突时,Merge按钮是灰色的,此时需要先解决冲突再Merge
点击Resolve conflicts
在这里插入图片描述
然后在解决冲突界面选用Use ours自己的代码覆盖别人的,还是选择Use theirs别人的覆盖自己的代码
在这里插入图片描述
这里我选择Use ours,即将注释内容为列表数量的内容保留
在这里插入图片描述
选了用自己的之后提交信息到资源分支
Use ours–>Commit to source branch
解决冲突后返回merge界面,别忘了点Approve授权通过
在这里插入图片描述
刷新界面,再次点击Merge
在这里插入图片描述

3.3 合并成功

合并成功后的界面如下
在这里插入图片描述

3.4 查看合并结果

查看远程仓库main分支的代码,已更新为自己的内容(获取列表数量),冲突解决
在这里插入图片描述


感谢阅读,祝君暴富!


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

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

相关文章

【SQL】数据操作语言(DML) - 删除数据:精细管理数据的利刃

目录 前言 DELETE语句的基础使用 删除指定记录 清空表与删除表数据的区别 注意 前言 在数据库管理的日常工作中&#xff0c;数据的删除是一项需要格外小心的操作&#xff0c;因为一旦数据被删除&#xff0c;往往难以恢复。数据操作语言(DML)中的DELETE语句&am…

景区智能厕所系统让旅游更便捷、更舒适

在旅游业蓬勃发展的今天&#xff0c;游客对于旅游体验的要求越来越高&#xff0c;而景区的基础设施建设也在不断创新和完善。其中&#xff0c;景区智能厕所系统的出现&#xff0c;无疑为游客带来了更加便捷、舒适的旅游体验。 一、智能厕所系统首先体现在其精准的定位和引导功能…

20个你必须知道的Linux小命令

20个你必须知道的Linux小命令 Linux系统强大的命令行工具让我们可以高效地管理和监控系统。本文将介绍20个分门别类的小命令,它们的安装方式和使用技巧,希望能提升你的工作效率。 系统监控 1. htop 简介:htop 是一个交互式的进程查看器,比 top 更友好且功能更强大。 特…

three.js 第六节 - 纹理以及贴图【.hdr文件(hdr贴图)】- 色彩空间

素材 这是素材 更多素材、案例、项目 好几个G一共&#xff0c;加我q178373168&#xff0c;60大洋拿走 源码 源码 // ts-nocheck // 引入three.js import * as THREE from three // 导入轨道控制器 import { OrbitControls } from three/examples/jsm/controls/OrbitControls…

C# 判断值是否在枚举里

你还在代码里面通篇通过数字的定义类型。比如type为1 表示xx,type为2 表示yy吗&#xff1f;然后程序里面通过数字1和2来判断吗&#xff1f;比如下面类似的代码&#xff1a; if(type1){ //.... } else if(type2){ //... } else if(type3){ //... } 老鸟们一般都会用枚举来定义…

MySQL索引,事务

一.MySQL索引介绍 索引是一个排序的列表&#xff0c;在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址。在数据十分大的时候&#xff0c;索引可以大大加快查询的速度。这是因为使用索引后可以不用扫描全表来定位某行的数据&#xff0c;而是先通过索引表找到该行数…

【LeetCode 274】H指数

1. 题目 2. 分析 这题没啥难度&#xff0c;需要熟练运用Python API。 sort(reverseTrue)可以用于排序List&#xff0c;并且倒序排序。 3. 代码 class Solution:def hIndex(self, citations: List[int]) -> int:citations.sort(reverseTrue)res 0for idx,cite in enume…

前端面试题(十)答案版

1. HTTPS 一次会发送几次请求? HTTPS 一次会发送至少 2 次请求: - 第一次是客户端发送 HTTP 请求,服务器返回 HTTP 状态码 301 或 302,要求客户端访问 HTTPS。 - 第二次是客户端根据重定向请求,发送 HTTPS 请求,并完成 SSL/TLS 握手等流程。 2. 一个搜索框,多个页面共用,但每个…

动态规划2

目录 121 买卖股票的最佳时机 打家劫舍 62 不同路径 64 最小路径和 53 最大子数组和 &#xff08;动归 普通数组部分&#xff09; 152 乘积最大子数组 300 最长递增子序列 1143 最长公共子序列 72 编辑距离 121 买卖股票的最佳时机 给定一个数组 prices &#xff0c;…

【C++】 ubuntu下获取屏幕尺寸、分辨率

1. 给/dev/fb0权限 sudo chmod 0777 /dev/fb0 注意&#xff1a;不执行这一条权限&#xff0c;无法获取任何数据 2. 获取屏幕尺寸 int fd; struct fb_var_screeninfo screenInfo; fd open("/dev/fb0",O_RDWR); ioctl(fd,FBIOGET_VSCREENINFO,&screenInfo); pr…

【毛毛虫案例-拖拽 Objective-C语言】

一、这个毛毛虫案例啊,是这个样子的, 1.首先,你这个脑袋,这个蓝色的脑袋,它是可以拽起来的, 下面的红色球,一个一个中心点之间,相互去附着, 其他的红色球,是拖不起来的, 只有这个蓝色的东西,可以拽起来,这个蓝色的View,还有重力, 这个蓝色的View,我在拖动它…

[深度学习] 变分自编码器VAE

变分自编码器&#xff08;Variational Autoencoders, VAEs&#xff09;是一种生成模型 Tutorial on Variational Autoencoders&#xff0c;它结合了概率图模型和深度学习&#xff0c;通过学习数据的潜在表示来生成新的数据样本。VAEs在数据生成、异常检测、数据压缩等领域具有广…

如何应对UI测试自动化的不稳定循环!

以下为作者观点&#xff1a; 当我加入UI自动化团队时&#xff0c;我很高兴能为新功能的自动化测试用例开发做出贡献。然而&#xff0c;我很快意识到团队花费了大量时间来修复之前迭代中不稳定的测试。这种情况让我感到困惑&#xff0c;因为当自动化测试脚本已知不稳定时&#…

git使用中 error: pathspec ‘XXX‘ did not match any file(s) known to git 报错解决方法

报错原因 本人在本地开发中&#xff0c;切换线上新创建分支时&#xff1a; $ git checkout master01 error: pathspec master01 did not match any file(s) known to git解决方式 $ git branch -a | grep master * masterremotes/origin/HEAD -> origin/masterremotes/or…

python开发api接口框架

在现代软件开发领域中&#xff0c;API接口框架扮演着非常重要的角色。它可以帮助开发者快速搭建和部署API&#xff0c;提供数据交换的接口&#xff0c;使得不同系统之间可以进行通信和数据传输。Python作为一门功能强大且易于学习的编程语言&#xff0c;被广泛应用于API接口的开…

【Windows 常用工具系列 17 -- windows bat 脚本多参数处理】

请阅读【嵌入式开发学习必备专栏】 文章目录 bat 脚本命令行参数使用示例多参数处理使用示例遍历所有参数 bat 脚本命令行参数 在Windows批处理&#xff08;.bat&#xff09;脚本中接收命令行参数是一个常见的需求&#xff0c;这样的脚本能够根据提供的参数执行不同的操作。命…

Kubernetes之Controller详解

本文尝试从Kubernetes Controller的种类、交互逻辑、最佳实践、伪代码示例及历史演进5个方面对其进行详细阐述&#xff0c;希望对您有所帮助&#xff01; 一、Kubernetes Controller种类 Kubernetes Controller Manager 是 Kubernetes 集群的核心组件之一&#xff0c;负责管理…

身边的故事(十一 ):阿文的故事:红包

虽然是发小&#xff0c;但是小时候的记忆很模糊了&#xff0c;从哪里写起呢&#xff1f;时间节点从大学开始吧&#xff0c;初中的那些有机会后续再写了。 今年回家过年的时候收到阿番要结婚的消息。大年初三阿番就在微信上给我发电子请帖。阿番的女朋友和阿番同居已经有三四年。…

C++ std::array的原理和语法

原理 std::array 是C标准库提供的一个模板类&#xff0c;用于表示固定大小的数组。与传统的C风格数组不同&#xff0c;std::array 提供了更加安全和功能丰富的接口&#xff0c;并且它的大小在编译时就已经确定。std::array 实际上是对传统数组的一个轻量级封装&#xff0c;提供…

无线幅频仪制作(WiFi通信)-含STM32源程序,JAVA上位机与设计报告

资料下载地址&#xff1a;无线幅频仪制作(WiFi通信)-含STM32源程序,JAVA上位机与设计报告 目录 项目功能 1、 系统方案1.1 比较与选择 1.1.1 控制器的论证与选择 1.1.2 信号源的论证与选择 1.1.3 放大器模块的论证与选择 1.1.4 键盘与显示模块的论证与选择 1.1.5 网络通…