Git - 在公司中,使用 git 的流程是什么?遇到冲突怎么办?

news2024/11/17 9:38:19

目录

一、公司中 git 的使用流程

1.1、设置用户签名

1.2、创建分支,提交代码到远程仓库

1.3、创建 pr,code review

1.4、意外情况:分支冲突


一、公司中 git 的使用流程


1.1、设置用户签名

刚进公司,肯定是先初始化个人的用户签名啦~

用户名一般是你的 "花名" .

邮箱就是公司给你的邮箱.

git config --global user.name "用户名"
git config --global user.email 邮箱

配置权限:

1. local(优先级最高):默认,只影响本地;

2. global (优先级中等) :影响当前用户的git仓库;

3. system (优先级最低) :印象到全系统的git仓库;

注意:首次下载git一定要进行设置,否则后续提交代码会出错;这里的邮箱不一定需要真实邮箱,可以是一个虚拟邮箱;

执行之后就可以在用户目录下看到这个文件:

1.2、创建分支,提交代码到远程仓库

a)写完代码之后,就可以提交代码啦~

注意:对于实习生来说,push 的时候不能在 master 主分支上,而是要自己先创建一个分支,然后 push 自己的分支!

因此建议写完代码之后,首先就是要创建分支并切换.

git checkout -b feature/xxx

Ps: 分支名以 "feature/" 开头,后面的内容自定义即可.

b)接下来就是以下一顿操作

git add .

git commit -m "feat:xxx" .

git push origin feature/xxx

Ps:提交的信息以  "feat:" 开头,后面的内容有意义即可

c)不出意外的话(没有分支冲突,不过作为实习生的你,自己的分支 push 一般是不会遇到滴),因该是以下情况

1.3、创建 pr,code review

a)此时就可以去到代码仓库中新建一个 pr

b)选择你要向哪个分支上去合并,以及评审人(一般就是你的 Monter)

c)选择你的评审人

d)之后就可以将此页面的链接发送给你的 Mentor 啦,他就会对你的代码进行 code review...  指出哪里有问题,如果没问题的话,你的导师就会直接给你 merge 了.

Ps:下面这一步,在你不是正式工之前,一般都是由你的 Mentor 来完成的,

之后你就可以去 预发 啦.

1.4、意外情况:分支冲突

a)这天,你兴致勃勃的敲完代码,并且 push 完后,准备 pr,却发现如下情况:

这种情况就是因为你在你的分支上写代码之前,有其他人提交了代码到 master 分支上,导致你本地的代码和远程仓库的代码不一致,此时你再去编辑本地的代码(你 push 的文件正好是别人在远程仓库上已经修改过的文件),然后 push,就会出现以上这种情况.

因为 git 可不知道你是要保留远程仓库上的代码,还是保留你的代码,还是都保留...

b)莫慌莫慌,此时你只需要通过 pull 再拉取一下你要合并的那个分支的到你自己的分支上即可

例如,我当前是 feature/xxx 分支,需要向 master 分支合并,但是遇到了上述冲突,因此你只需要在 feature/xxx 分支上,拉取一下 master 分支的代码,如下:

c)此时你再去查看你之前 push 的文件,就可以选择保留谁的代码啦

比如我两个都要,那么删掉提示信息即可.

 

d)此时你就可以继续,执行以下一套操作来提交代码啦~

e)这个时候,你再刷新 pr 的页面,就会发现冲突已经解决了~

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

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

相关文章

教师社会地位最直观的表现是什么

教师社会地位最直观的表现是什么?当我们谈及教师社会地位时,不能仅仅从薪资、荣誉等角度去理解,而应从教师的工作环境、待遇、以及社会对教师的认知和尊重程度等方面进行全面考察。 教师的工作环境是他们社会地位的直观体现之一。一个良好的…

备战蓝桥杯---数据结构与STL应用(优先队列的小细节)

很显然,我们先二分求X,对于验证,一开始我先想的是直接求每个的不足电量再除充电量后向上取整,然后判断与k的大小关系。事实上,如果让k很大,若有两只手机在下一刻多没电,显然上述方法得出的结论是错误的&…

虹科干货 | 如何使用nProbe Cento构建100 Gbit NetFlow 传感器

本文是一份全面的指南,解释了如何使用nProbe Cento构建一个高效的100 Gbit NetFlow传感器。旨在帮助大家充分利用NetFlow技术,以监控和分析高速网络流量。 当需要监控分布式网络,了解流经上行链路或关键网段的网络流量时,NetFlow…

【JVM】类加载流程

目录 1.加载 2.链接 (1)校验 (2)准备 (3)解析 3.初始化 4.使用 5.卸载 1.加载 加载阶段,简言之,查找并加载类的二进制数据,生成 Class 的实例 在加载类时&#x…

SpringCloud_学习笔记_1

SpringCloud01 1.认识微服务 随着互联网行业的发展,对服务的要求也越来越高,服务架构也从单体架构逐渐演变为现在流行的微服务架构。这些架构之间有怎样的差别呢? 1.0.学习目标 了解微服务架构的优缺点 1.1.单体架构 单体架构&#xff…

Trinamic推出嵌入式运动控制模块,用于驱动大功率工业电机,大幅降低功耗

集成的实时、无传感器控制与驱动技术将功率损耗降低50%,可驱动功率高出三倍的电机(高达7A) TRINAMIC推出两款新型插槽式运动控制嵌入式模块及其开发工具,采用独特的实时无传感器控制技术。这些完备的控制/驱动模块通过在其板上实时处理关键功能&#xff…

JDBC 结构优化2

JDBC 结构优化2 文章目录 JDBC 结构优化2结构优化2 - ATM系统(存,取,转,查)1 Service2 事务3 ThreadLocal4 事务的封装 结构优化2 - ATM系统(存,取,转,查) 1 Service 什么是业务? 代表用户完成的一个业务功能,可以由一个或多个DAO的调用组成。软件所提供的一个功…

阿里云 DMS 执行sql变更

数据库开发-数据变更-无锁变更 选择数据库:比如要更新生产库,搜索生产库名字。 填入变更sql。

【计算机图形】几何(Geometry)和拓扑(Topology)

目录 参考文献三维实体建模内核CSG/BREPParasolid简介Parasolid接口函数Parasolid类的结构 Parasolid数据分类:几何(Geometry)和拓扑(Topology)拓扑(Topology)什么是“拓扑”呢?Principle Geometry- Topology - Construction Geometry案例:拓…

最新多功能PHP图床源码 /兰空图床Lsky Pro开源版v2.1/ 单纯的图床程序源码

源码介绍: Lsky Pro 是一个用于在线上传、管理图片的图床程序,中文名:兰空图床,你可以将它作为自己的云上相册,亦可以当作你的写作贴图库。 该程序的最初版本诞生于2017年10月,由ThinkPHP 5框架精心打造而…

飞致云开源社区月度动态报告(2024年1月)

自2023年6月起,中国领先的开源软件公司FIT2CLOUD飞致云以月度为单位发布《飞致云开源社区月度动态报告》,旨在向广大社区用户同步飞致云旗下系列开源软件的发展情况,以及当月主要的产品新版本发布、社区运营成果等相关信息。 飞致云开源大屏…

初谈C++:引用

文章目录 前言概述引用特性应用场景做参数做返回值 传值、传引用效率比较引用和指针的区别 前言 在学习C语言的时候会遇到指针,会有一级指针、二级指针…很容易让人头昏脑胀。在C里面,引入了引用的概念,会减少对指针的使用。引用相当于给一个…

Android矩阵Matrix变换setRectToRect,Kotlin

Android矩阵Matrix变换setRectToRect,Kotlin 在 Android画布Canvas裁剪区域clipRect,Kotlin-CSDN博客 基础上,增加一个点,通过setRectToRect挖出Bitmap原图中心区域的一块放到目标RectF里面。 import android.content.Context imp…

phpstudy安装mysql5.7后在my.ini文件中无法修改sql_mode

如标题,windows环境下使用phpstudy安装mysql5.7后需要修改mysql中的sql_mode配置,但是在phpstudy中打开mysql配置文件my.ini后, 通过查找找不到sql_mode或sql-mode, 此时无法在my.ini文件中直接进行修改,可以使用mysq…

开源大数据集群部署(八)Ranger编译部署

作者:櫰木 在hd1.dtstack.com主机root权限下操作。 1、 编译ranger ranger二进制包编译过程在本次过程中不做详细说明。简单说明如下: 在pom.xml中更改对应hadoop集群组件版本。ranger2编译前提条件是python3和mvn已安装完成。编译命令: …

ROS---机器人导航实现

ROS—机器人导航实现 1 准备工作 1.1 分布式架构 需要完成分布式框架的搭建并且能正常运行&#xff0c;在PC端可以远程登录机器人端。 1.2 功能包安装 在机器人端安装导航所需功能包&#xff1a; 安装 gmapping 包(用于构建地图):sudo apt install ros-<ROS版本>-g…

Linux下Docker搭建部署Typecho博客【详细版】

Linux下Docker搭建部署Typecho博客【详细版】 一、环境准备1.1.准备阿里云服务器【新用户免费使用三个月】1.2.准备远程工具【FinalShell】1.3.系统信息1.4.安装所需软件包1.5.设置docker镜像源1.6.更新yum软件包索引1.7.确认停用selinux 二、安装Docker2.1.安装Docker-Ce2.2.查…

Spring Boot3,启动时间缩短 10 倍!

前面松哥写了一篇文章和大家聊了 Spring6 中引入的新玩意 AOT&#xff08;见Spring Boot3 新玩法&#xff0c;AOT 优化&#xff01;&#xff09;。 文章发出来之后&#xff0c;有小伙伴问松哥有没有做性能比较&#xff0c;老实说&#xff0c;这个给落下了&#xff0c;所以今天…

oracle错误:The Network Adapter could not establish the connection

执行请求的操作时遇到错误: IO 错误: The Network Adapter could not establish the connection (CONNECTION_IDU34sFBqOSayf4o4C6pwQ6A) 供应商代码 17002 原因&#xff1a; 错误代码 17002 表示 Oracle 数据库客户端遇到了网络适配器无法建立连接的问题 解决办法&#x…

鸿蒙harmony--TypeScript基础语法

把青春献给身后那座辉煌的都市&#xff0c;为了这个美梦我们付出着代价 目录 一&#xff0c;基础类型 二&#xff0c;数组 三&#xff0c;any 四&#xff0c;变量的类型注释 五&#xff0c;函数 5.1 参数类型注解 5.2 返回类型注解 5.3 匿名函数 六&#xff0c;对象类型 可选属…