git基本使用(二):git分支的操作命令

        Git 的多分支管理是指在同一个仓库中创建和管理多个分支,每个分支可以独立开发,互不干扰。分支是 Git 中的一种强大功能,允许开发人员同时在多个不同的功能、修复或实验上工作,而不会影响主分支或其他分支。通过多分支管理,团队可以并行处理多个任务,例如开发新功能、修复 bug 或进行代码重构,而不必担心代码冲突或影响主分支的稳定性。在进行多个并行作业时,通常会用到分支。

目录

一、分支的基本概念

二、分支的基本操作命令

2.1 查看分支

2.2 创建分支

2.3 切换分支

2.4 创建并切换到该分支

2.5 删除分支

2.6 合并某个分支到当前分支(重要)

2.7 以图表形式显示分支

2.8 历史记录一行显示

2.9 保护现场

2.10 列出所有保存的现场信息

2.11 取出某次的现场信息

三、远程仓库操作

3.1 生成公钥和私钥

3.2 测试与github或者gitee(码云)有没有连通

3.3  克隆项目(将Gitee上的项目下载到本地来)

3.4  提交分支到远程仓库(将本地代码上传到Gitee)

3.5 拉取远程服务器上的分支更新到本地


一、分支的基本概念

注意:

         在本地仓库中,会有一个主分支master, head指向哪个分支,那么当前就处于哪个分支上。

  1. 独立开发环境

    • 每个分支可以看作是项目的一个独立副本,你可以在这个副本上自由地进行修改,而不影响其他分支的内容。
    • 这种独立性使得你可以同时进行多个任务,例如开发新功能、修复 bug 或进行实验性开发。
  2. 并行开发

    • 分支允许多个开发人员并行工作,每个人可以在自己的分支上开发新功能或修复 bug,然后将这些更改合并到主分支或其他分支上。
    • 这大大提高了团队的开发效率,减少了代码冲突的可能性。
  3. 快照

    • 分支实际上是对代码库某个状态的快照。创建一个新分支实际上是在当前代码库状态的基础上生成一个新的工作副本。
    • 你可以在任何时候切换到这个快照,查看或修改代码,而不影响主分支的代码。

二、分支的基本操作命令

2.1 查看分支

查看分支: git branch

2.2 创建分支

创建分支: git branch 分支名

2.3 切换分支

切换分支: git checkout 分支名,注意切换分支必须保证工作区是干净的(本地仓库最新版本与工作区相同),如果不是干净的,那么提交一次即可。

2.4 创建并切换到该分支

创建并切换到该分支: git checkout -b 分支名

2.5 删除分支

删除分支, git branch -d 分支名注意:不能删除当前所处分支,切换到其它分支再删除

2.6 合并某个分支到当前分支(重要)

合并某个分支到当前分支: git merge 分支名 ,合并时可能产生冲突(基础代码不一样了,不能单纯的合并!!!),需要解决冲突,手动检查代码,然后再提交commit。

有时需要禁止快速合并,可执行:git merge --no-ff -m '描述' 分支名

2.7 以图表形式显示分支

以图表形式显示分支:git log --graph

2.8 历史记录一行显示

历史记录一行显示 : git log --pretty=oneline

2.9 保护现场

保护现场 git stash, 当前工作区有代码修改了,但是我们没有完成此版本不能提交,此时又不能切换到其他分支,可以先保存现场,再切换。

2.10 列出所有保存的现场信息

.列出所有保存的现场信息 git stash list,刚刚它保存的数据。

2.11 取出某次的现场信息

        取出某次的现场信息,继续工作 :git stash pop "stash@{1}" ,默认是最近一次,如果有多个现场,也可以加上编号"stash@{1}"指定获取某一个。不同分支的现场,应该回到对应分支再获取,否则会自动合 并现场到当前分支的工作区。

三、远程仓库操作

     

3.1 生成公钥和私钥

生成通信密钥:ssh-keygen -t rsa -C "su@126.com" ,生成的公钥在/home/stu/.ssh/下,如下图:

       然后打开Gitee网站,将公钥文件里面的内容复制加入到网站的公钥添加页面中(账号-设置-安全设置-SSH公钥) 。并在网站上创建远程仓库!

3.2 测试与github或者gitee(码云)有没有连通

3.3  克隆项目(将Gitee上的项目下载到本地来)

     克隆项目,就是将Gitee上面的项目下载到本地来,终端执行命令:git clone 项目地址

3.4  提交分支到远程仓库(将本地代码上传到Gitee)

      首先,本地在工作区写好代码,提交到本地仓库,其次才是将本地仓库提交到远程仓库。提交分支到远程仓库执行命令:git push origin 分支名,不写分支名,默认主分支。

提交分支到远程仓库,并跟踪分支 :git push -u origin 分支名

3.5 拉取远程服务器上的分支更新到本地

       拉取远程服务器上的分支更新到本地 :git pull origin 分支名,不写分支名,默认主分支。

至此,git的基本使用就介绍完毕,感谢阅读,喜欢的话就点赞加关注!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

240627_关于CNN中图像维度变化问题

240627_关于CNN中图像维度变化问题 在学习一些经典模型时,其中得维度变化关系总搞不太明白,集中学习了以下,在此作以梳理总结: 一般来说涉及到的维度变换都是四个维度,当batch size4,图像尺寸为640*640&a…

Kubernetes之Scheduler详解

本文尝试从Kubernetes Scheduler的功能介绍、交互逻辑、伪代码实现、最佳实践、自定义Scheduler举例及其历史演进6个方面进行详细阐述。希望对您有所帮助! 一、Kubernetes Scheduler 功能 Kubernetes Scheduler 是 Kubernetes 集群的核心组件之一,负责…

数据处理python

1.列筛选 (1)某一列&某几列 对于一个表单里面的数据,如果我们想要对于这个表单里面的数据进行处理,我们可以一列一列进行处理,也可以多列一起进行处理; 一列一列处理: 只需要在这个dataf…

台式机通过网线直连笔记本,台式机通过笔记本上网【解决台式机没有网络的问题】

一、总览 将笔记本电脑和台式机使用网线连接起来。在笔记本电脑上打开网络和共享中心,进入“更改适配器设置”选项,找到当前连接的网卡,右键点击选择“属性”。在网卡属性中,找到“共享”选项卡,勾选“允许其他网络用…

帮助你简易起步一个BLOG(博客搭建)项目

Blog项目 后端项目结构1. 项目初始化2. 详细步骤3.postman测试 前端1. 项目初始化2. 详细步骤 本章节是为了帮助你起步一个完整的前后端分离项目。 前端技术栈: react、vite、mantine、tailwind CSS、zustand、rxjs、threejs 后端技术栈:nodemon、nodej…

平面点云格网过程及可视化介绍(python)

1、背景介绍 实际人工构造物中,很多物体表面为平面结构,因此将点云投影在二维平面上进行处理,如进行点云面积计算、点云边缘提取等。 具体案例可以参考博客:详解基于格网法统计平面点云面积_点云格网法计算xy投影面积-CSDN博客、点…

AI 开发平台(Coze)搭建《AI女友(多功能版本)》

前言 本文讲解如何从零开始,使用扣子平台去搭建《AI女友(多功能版本)》 bot直达:AI女友(多功能版) - 扣子 AI Bot (coze.cn) 欢迎大家前去体验!!! 正文 功能介绍 …

C#串口通信Seriaport和页面传值

串口通信 串口COM:是一种用于连接计算机和外设设备的接口,也叫串行接口,简称com,常见的串口有一半电脑应用的RS-232(使用25针或9针的 连接器)通俗来讲串口就是usb接口、鼠标串口。键盘串口 串口通讯:是指外…

Spring Clude 是什么?

目录 认识微服务 单体架构 集群和分布式架构 集群和分布式 集群和分布式区别和联系 微服务架构 分布式架构&微服务架构 微服务的优势和带来的挑战 微服务解决方案- Spring Cloud 什么是 Spring Cloud Spring Cloud 版本 Spring Cloud 和 SpringBoot 的关系 Sp…

VScode远程连接时卡住

将报错文件删除 ### 查找文件(base) ~ find /home -name 5c3e652f63e798a5ac2f31ffd0d863669328dc4c /home/cszx/.vscode-server/data/clp/99e4e0e4dad86d47de9777231596fd92.zh-cn/5c3e652f63e798a5ac2f31ffd0d863669328dc4c ### 删除(base) ~ rm -rf /home/cszx/.vscode-ser…

centOS7网络配置_NAT模式设置

第一步:查看电脑网卡 nat模式对应本地网卡的VMnet 8 ,查看对应的IP地址。 第二步:虚拟网络编辑器 打开VMWare,编辑--虚拟网络编辑器,整个都默认设置好了,只需要查看对应的DHCP设置中对应的IP的起始&#…

MySQL数据类型、运算符以及常用函数

MySQL数据类型 MySQL数据类型定义了数据的大小范围,因此使用时选择合适的类型,不仅会降低表占用的磁盘空间, 间接减少了磁盘I/O的次数,提高了表的访问效率,而且索引的效率也和数据的类型息息相关。 数值类型 浮点类型…

01.Ambari自定义服务开发-项目初始化

文章目录 基础环境在PyCharm中初始化项目配置项目相关依赖在PyCharm中导入依赖 基础环境 PyCharmPython 2.7已经安装完成的Ambari服务端 在PyCharm中初始化项目 项目名称就是我们要安装服务的名称,要求名称为全大写,如:DORIS创建Python2.7…

AUTOSAR以太网之IPv4

系列文章目录 返回总目录 文章目录 系列文章目录一、IPv4报文格式二、主要函数1.IPv4_Init()2.IPv4_Receive()3.IPv4_Transmit() 一、IPv4报文格式 二、主要函数 1.IPv4_Init() 这个函数除了对模块配置进行初始化,如果有分包和组包使能,则会对一些相关…

【高级篇】分区与分片:MySQL的高级数据管理技术(十三)

引言 在上一章,我们探讨了MySQL的主从复制与高可用性,这是构建健壮数据库架构的基石。现在,让我们深入到更高级的主题——分区与分片,这些技术对于处理大规模数据集和提升数据库性能至关重要。我们将详细介绍表分区的概念、类型及分片技术的应用,为下一章讨论MySQL集群与…

2.5 MAC扫描器

MAC扫描器是一款专门用来获取网卡物理地址的网络管理软件,相对于Windows系统的getmac命令,MAC扫描器功能更加强大,它不仅可以获取局域网计算机的MAC地址,还可以获取 Internet 中网卡的MAC地址。MAC扫描器通常被用来管理本地网络中…

22 Shell编程之免交互

目录 22.1 Here Document免交互 22.1.1 Here Document概述 22.1.2 Here Document免交互 22.1.3 Here Document变量设定 22.1.4 Here Document格式控制 22.1.5 Here Document多行注释 22.2 expect免交互 22.2.1 expect概述 22.2.2 expect安装 22.2.3 基本命令介绍 22.2.4expec…

Python操作MySQL数据库--使用pymysql模块

Python操作MySQL数据库--使用pymysql模块 一、新建数据库和数据表1.1 新建book数据库1.2 新建bookprice数据表二、连接数据库2.1 建立数据库连接三、新增数据3.1 新增单条数据3.2 新增多条数据3.3 批量新增四、修改数据4.1 修改单条数据4.2 修改多条数据五、删除数据5.1 删除单…

Java基础(四)——字符串、StringBuffer、StringBuilder、StringJoiner

个人简介 👀个人主页: 前端杂货铺 ⚡开源项目: rich-vue3 (基于 Vue3 TS Pinia Element Plus Spring全家桶 MySQL) 🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展 &#x1…

配置 Cmder 到鼠标右键

win Q 快捷键搜索 cmd,以管理员身份运行 在命令行输入 cmder.exe /REGISTER ALL