拉提查合创5步玩转git工具协作代码开发

1 工具使用场景

git使用整体流程
  开发团队使用git版本管理工具,进行协作代码开发过程中,最常用的场景为:

  (1)拉取代码

    将git远端仓库最新代码拉取到本地。

  (2)提交代码

    将本地新增修改的代码提交至git远端仓库中。

  (3)查看历史

    查看git历史提交记录与变更内容。

  (4)合并分支

    将开发分支代码提交到主分支中。

  (5)创建标签

    将上线定版的代码,创建一个标签,与上线版本包的代码保持一致。

2 使用效果

2.1 拉取代码

  使用"git clone 仓库URL地址"命令,拉取仓库代码到本地;

拉取代码

2.2 提交代码

  使用"git status"命令,查看本地代码存在变更、修改的文件范围;

  使用"git add 文件名"命令,添加具体的单个文件变动到git中;或使用"git add ."一次性添加所有文件变动到git中。

  使用"git commit -m 附注信息"命令,提交本次变动的文件到本地git仓库;

  使用"git push"命令,推送本地仓库变更到git远端仓库。

提交代码1
提交代码2
  远端仓库查看develop分支,可以看到最近推送的文件内容。

提交代码3

2.3 查看历史

  使用"git log"命令,查看历史提交版本。

查看历史
  使用"git diff 版本1 版本2"命令,查看版本2相较于版本1变更的文件内容,绿色表示新增,红色表示删除。

查看版本差异

2.4 合并分支

  使用"git pull origin 目标分支"命令,将目标分支的代码合并到当前分支。

合并develop分支至当前分支1
  使用"git push"命令,将合并后的代码推送到git远端仓库。

合并develop分支至当前分支2
  远端仓库查看master分支,可以看到从develop合并来的代码已提交。

合并develop分支至当前分支3

2.5 创建标签

  使用"git tag"命令,查看历史标签。

  使用"git tag -a 标签名称 -m 附注信息"命令,以当前分支代码内容为基础,创建标签。

定版打标签1
  使用"git push origin 标签名称"命令,推送本地标签至git远端仓库。

定版打标签2

3 常见问题

3.1 文件冲突

  同一个文件多个人同时修改时,后提交的人会报错,此时需解决冲突。

文件冲突解决1
  一般的,使用报错提示中的"git pull"命令,先更新本地代码与git远端仓库一致,再打开冲突文件,手动修改内容后,重新进行提交代码操作即可。

文件冲突解决2
文件冲突解决3
  若"git pull"命令执行依然报错,需要使用"git stash"暂存本地版本,然后执行"git pull --rebase"进行分支合并,并执行"git stash pop"弹出本地缓存内容。才能手动调整冲突文件内容。此种场景不常见,此处不再举例说明。

总结及练习

  介绍了团队协作开发使用git工具的常见场景,“拉取代码”、“提交代码”、“查看历史”、“合并分支”、“创建标签”,可以用于日常开发。

  练习方式,可以参考使用效果章节,自己在gitee上创建一个项目,尝试相关命令。

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

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

相关文章

【SpringBoot】2 项目搭建

创建项目 1)确实本地 jdk 版本 打开命令行窗口:快捷键 Windows R,输入 CMD,敲回车 执行命令:java -version 2)在项目 clone 的位置创建 Spring Boot 项目,使用 Maven 进行依赖管理&#xff…

大模型学习(1)

初学者,仅做自己学习记录,如果对你有什么帮助,那更好了。 下面是论文《Attention Is All You Need》的经典transformer架构,在学习的过程中,有很多疑惑。 embedding层在做什么 Transformer的embedding层在做的是将输…

35.【C语言】详解函数递归

目录: 定义 作用 例子1~3 拓展学习 趣味练习 1.定义:函数自己调用自己(递推回归) int main() {main()return 0; } 这样容易死循环,导致爆栈(Stack Overflow) 所以需要设立限制条件,使执行时越来越接近条…

02 Golang面向对象编程_20240727 课程笔记

视频课程 最近发现越来越多的公司在用Golang了,所以精心整理了一套视频教程给大家,这个是其中的第二部,后续还会有很多。 视频已经录制完成,完整目录截图如下: 课程目录 01 结构体的声明.mp402 使用var根据结构体…

iOS基础---多线程:GCD、NSThread、NSOperation

系列文章目录 iOS基础—多线程:GCD、NSThread、NSOperation 文章目录 系列文章目录一、GCD1.GCD的任务、函数、队列a.任务b.函数c.队列 2.GCD的使用a.同步函数并发队列b.异步函数并发队列c.同步函数串行队列d.异步函数串行队列e.同步函数主队列f.异步函数主队列 3.…

FastAPI(七十五)实战开发《在线课程学习系统》接口开发-- 创建课程

源码见:"fastapi_study_road-learning_system_online_courses: fastapi框架实战之--在线课程学习系统" 上次我们分享了,FastAPI(七十四)实战开发《在线课程学习系统》接口开发-- 删除留言 从本篇文章开始,…

如何学习Doris:糙快猛的大数据之路(从入门到专家)

引言:大数据世界的新玩家 还记得我第一次听说"Doris"这个名字时的情景吗?那是在一个炎热的夏日午后,我正在办公室里为接下来的大数据项目发愁。作为一个刚刚跨行到大数据领域的新手,我感觉自己就像是被丢进了深海的小鱼—周围全是陌生的概念和技术。 就在这时,我的…

嵌入式Python、ROS、SLAM、WebSocket和Node.js:智能巡逻监控安防机器人设计流程(代码示例)

项目概述 随着智能技术的发展,智能巡逻机器人在安防、监控和巡逻等领域的应用越来越广泛。本文将介绍一个结合嵌入式系统、机器人技术和后端开发的智能巡逻机器人。该机器人能够自主导航,实时检测异常情况(如火灾或入侵者)&#…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第五十七章 Linux中断实验

i.MX8MM处理器采用了先进的14LPCFinFET工艺,提供更快的速度和更高的电源效率;四核Cortex-A53,单核Cortex-M4,多达五个内核 ,主频高达1.8GHz,2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

AI绘画:艺术与科技融合的新篇章

随着人工智能(AI)技术的飞速发展,AI绘画作为一种新兴的艺术形式,正逐步改变着传统艺术创作的格局。从早期的简单模仿到如今的个性化创作,AI绘画不仅提升了艺术创作的效率和质量,还开辟了全新的应用场景和商…

C++模板——泛型编程

目录 1. 什么是泛型编程 2. 函数模板 2.1 定义格式 2.2 实例化及原理 2.3 参数匹配原则 3. 类模板 3.1 定义格式 3.2 实例化 4. 非类型模板参数 5. 模板的特化 5.1 概念 5.2 函数模板和类模板特化 6. 模板的分离编译 1. 什么是泛型编程 如何实现一个通用的加…

【Java算法专场】二分查找(下)

目录 山脉数组的峰顶索引 算法分析 算法步骤 算法代码 算法示例 寻找峰值 算法分析 算法步骤 算法代码 算法示例 寻找旋转排序数组中的最小值 算法分析 算法步骤 算法代码 算法示例 点名 算法分析 算法步骤 算法代码 算法示例 山脉数组的峰顶索引 …

TCP/IP协议(全的一b)应用层,数据链层,传输层,网络层,以及面试题

目录 TCP/IP协议介绍 协议是什么,有什么作用? 网络协议为什么要分层 TCP/IP五层网络协议每层的作用 应⽤层 DNS的作用及原理 DNS工作流程 数据链路层 以太⽹帧格式 MAC地址的作用 ARP协议的作⽤ ARP协议的工作流程 MTU以及MTU对 IP / UD / TCP 协议的影响 传输层…

数据结构之判断二叉树是否为搜索树(C/C++实现)

文章目录 判断二叉树是否为搜索树方法一:递归法方法二:中序遍历法总结 二叉树是一种非常常见的数据结构,它在计算机科学中有着广泛的应用。二叉搜索树(Binary Search Tree,简称BST)是二叉树的一种特殊形式&…

自动化测试--WebDriver API

1. 元素定位方法 通过 ID 定位:如果元素具有唯一的 ID 属性,可以使用 findElement(By.id("elementId")) 方法来定位元素。通过 Name 定位:使用 findElement(By.name("elementName")) 来查找具有指定名称的元素。通过 Cl…

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 5键键盘(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试D卷目录,全、新、准,题目覆盖率达 95% 以上,支持题目在线…

Linux常用操作

软件安装 CentOS 系统使用: yum [install remove search] [-y] 软件名称 install 安装 remove 卸载 search 搜索 -y ,自动确认 Ubuntu 系统使用 apt [install remove search] [-y] 软件名称 install 安装 remove 卸载 search 搜索 -y…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第四十六章 自动创建设备节点

i.MX8MM处理器采用了先进的14LPCFinFET工艺,提供更快的速度和更高的电源效率;四核Cortex-A53,单核Cortex-M4,多达五个内核 ,主频高达1.8GHz,2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

前端播放rtsp视频流(最后使用WebRtc)

前端播放rtsp视频流(最后使用WebRtc) 前言: ​ 项目需要将实验室里的摄像头画面引入到前端页面中,故对目前常见的几种方法进行了尝试,虽然过程坎坷但结局是好的。 一些尝试: RTSPtoWebRtc工具 由于RTSPt…

opengl 写一个3D立方体——计算机图形学编程 第4章 管理3D图形数据 笔记

计算机图形学编程(使用OpenGL和C) 第4章 管理3D图形数据 笔记 数据处理 想要绘制一个对象,它的顶点数据需要发送给顶点着色器。通常会把顶点数据在C端放入 一个缓冲区,并把这个缓冲区和着色器中声明的顶点属性相关联。 初始化立…