git的使用日常习惯规范与一些特殊操作

git的使用日常习惯规范与一些特殊操作

  • 操作习惯规范
  • 创建本地新分支,推送新分支到云端仓库
    • 1.创建一个本地的login分支
    • 2.创建新分支后切换到新分支
    • 3.推送新分支到云端
  • git的特殊操作
    • 撤回commit(取消提交到本地版本库的动作,本地工作区写的代码不会丢失)
    • 本地分支合并回滚 (取消merge)
      • 第一步:查看merge操作的上一个提交记录的版本号
      • 第二步:回滚到merge之前的状态

博主 DTcode7 带您 溺亖在知识的海洋里,嘿嘿嘿.~
🐒 个人主页—— DTcode7 的博客 🐒
《微信小程序相关博客》
《Vue相关博客》
《前端开发习惯与小技巧相关博客》
《AIGC相关博客》
《photoshop相关博客》
😚 吾辈才疏学浅,摹写之作,恐有瑕疵。望诸君海涵赐教。望轻喷,嘤嘤嘤 🙈
🕍 愿斯文对汝有所裨益,纵其简陋未及渊博,亦足以略尽绵薄之力。倘若尚存阙漏,敬请不吝斧正,俾便精进!

上回说到:

git提交-分支开发合并-控制台操作

git最常用的命令与快捷操作说明

git控制台-分支的合并与推送

今天我们接着聊git~


操作习惯规范

  • 1、本地开发动手之前,先git pull,拉取远程仓库代码,防止晚上有人提交了代码,跟你本地代码版本不一致。
  • 2、本地开发好后,git add . -----> git commit -m “xx” 然后,再使用一次git pull,拉取远程仓库代码过来比对,防止你开发过程中,有人又提交了代码。如果有冲突就合并,没有就继续下一步。
  • 3、此时就可以git push了,这样操作能最大程度减少代码冲突或者代码覆盖的情况。

注:为什么要在第二步先git commit然后再git pull一次呢?是因为:
commit 是为了告诉 git 我这次提交改了哪些东西,不然你只是改了但是 git 不知道你改了,也就无从判断比较。(比如你现在本地删除一个文件,但是没有add commit 那此时git还是没删除文件前的记录,去pull远程仓库比对还是显示没有异常,但是实际你代码已经改了,只是git没有最新的修改记录而已)
pull是为了本地 commit 和远程commit 的对比记录,git 是按照文件的行数操作进行对比的,如果同时操作了某文件的同一行那么就会产生冲突,git 也会把这个冲突给标记出来

创建本地新分支,推送新分支到云端仓库

一开始,仓库中只有一个默认的master主分支,我们要新开发一个模块,就要新建一个分支出来
在这里插入图片描述

1.创建一个本地的login分支

创建新分支   git checkout -b 分支名

2.创建新分支后切换到新分支

git checkout 分支名    ---》切换分支    
(因为新建分支后,仍然还是在原来的分支,所以要切换分支)
git branch     ----》查看当前所在分支    

在这里插入图片描述
此时,本地就是在新建的这个login分支里了,现在进行

git add .  git commit -m "注释" git push  就会推送到云端中的同名分支名中去

注意:这里是git push 即使此时云端没有对应的分支名(也就是没有使用git push -u origin 分支名 在云端创建并推送这条语句) 推送上去的时候,会自动创建同名分支再推送。
在这里插入图片描述

3.推送新分支到云端

当然,正规一些的步骤是,切换到新分支后,通过:

git push -u origin 新分支名  进行云端的分支创建和推送

在这里插入图片描述
这步推送,同时创建了云端的对应分支,还将本地这个分支推送上去了
在这里插入图片描述


git的特殊操作

撤回commit(取消提交到本地版本库的动作,本地工作区写的代码不会丢失)

git commit -m "新增xx模块" //提交代码到本地仓库里了

此时,想要撤销这次提交,就可以使用:

git reset --soft HEAD^

这样就成功的撤销了最近一次的commit
本操作仅仅是撤回commit操作,写的代码仍然保留


注释:
1、HEAD^的意思:上一个版本,也可以写成HEAD~1 如果你进行了2次commit,想都撤回,可以使用HEAD~2
2、–soft的意思:不删除工作空间改动代码,撤销commit,不撤销git add .
3、如果只是commit注释写错了,只是想改一下注释,只需要:
git commit --amend
此时会进入默认vim编辑器,修改注释完毕后保存就好了(参考上述 特殊提示界面-1)

本地分支合并回滚 (取消merge)

本地代码仓库,合并自己的分支后,想要回退

第一步:查看merge操作的上一个提交记录的版本号

git reflog

在这里插入图片描述

第二步:回滚到merge之前的状态

git reset --hard 版本号

在这里插入图片描述
再次输入git reflog,查看合并记录
在这里插入图片描述
可以看到已经是在adf8749版本了

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

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

相关文章

基于单片机锂电池电量检测数码管显示系统设计

**单片机设计介绍,基于单片机锂电池电量检测数码管显示系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机锂电池电量检测数码管显示系统设计的主要目标是实时、准确地检测锂电池的电量,并…

uniapp中安装vant2

1.uniapp项目搭建 因为是安装vant2所以项目选择vue2,如果vue3项目的话安装vant3 2.安装vant npm i vantlatest-v2 3.在main.js文件引入挂载vant 说明:// #ifndef VUE3这里是vue2模板用来挂载注册组件的地方;// #ifdef VUE3这里是vue3模板…

数据结构学习——链表面试题

1. 删除链表中等于给定值 val 的所有结点。 203. 移除链表元素 - 力扣(LeetCode) 方法一: struct ListNode* removeElements(struct ListNode* head, int val) {struct ListNode* prevNULL;struct ListNode* curhead;while(cur){if(cur-&…

海外媒体发稿:3种媒体宣发套餐内容推广方法

现如今,伴随着信息技术的不断进步和推广,新闻媒体宣发变成企业品牌推广的重要手段之一。为了方便让新闻信息新闻资讯传递给目标群体,公司一般会选择不同的套餐内容和推广方法。下面我们就详细介绍3种新闻资讯新闻媒体宣发套餐内容推广方法。 …

C# 操作 Word 全域查找且替换(含图片对象)

目录 关于全域查找且替换 Word应用样本 SqlServer数据表部分设计样本 范例运行环境 配置Office DCOM 设计实现 组件库引入 实现原理 查找且替换的核心代码 窗格内容 页眉内容 页脚内容 形状内容 小结 关于全域查找且替换 C#全域操作 Word 查找且替换主要包括如下…

【Java】ArrayList数组的扩容机制 jdk1.8

📝个人主页:哈__ 期待您的关注 ArrayList和普通数组不同,ArrayList支持动态扩容,那么ArrayList到底是如何扩容的呢?你又是否知道ArrayList数组的初始长度是多少呢? 在开始介绍之前,我们要先介…

【Python】如何安装Python

推荐安装python39版本 1.安装python1.1.在任意盘新建Python39目录1.2.双击安装包1.3.安装成功后,WINRcmd进入dos页面,输入 python,即可查看是否安装成功 2.环境变量配置2.1.打开 我的电脑-》高级系统设置-》环境变量-》系统变量2.2.如上图配置…

MHA高可用集群部署

一、MHA的概念 1.1 MHA概述 一套优秀的MySQL高可用环境下故障切换和主从复制的软件MHA的出现就是解决MySQL 单点的问题。 MySQL故障过程中,MHA能做到0-30秒内自动完成故障切换MHA能在故障切换的过程中最大程度上保证数据的一致性以达到真正意义上的高可用 …

​如何用“Dreamina”进行文生图​

文生图,顾名思义,就是用文字描述来生成图片。近年来,随着人工智能技术的进步,文生图技术也逐渐成熟,并逐渐应用于各种领域,例如设计、创作、娱乐等等。 本文将介绍如何使用“Dreamina”进行文生图。 步骤…

2024.3.25-26记:二叉树的遍历

二叉树的遍历深度优先遍历(DFS)递归遍历前序递归遍历:中序递归遍历后续递归遍历 非递归遍历前序非递归遍历中序非递归遍历后续非递归遍历 宽度优先遍历(BFS): 二叉树的遍历 二叉树遍历大体上分为深度优先遍历(DFS)和宽度优先遍历(BFS)&#…

Linux 常用命令(1)

😇作者介绍:一个有梦想、有理想、有目标的,且渴望能够学有所成的追梦人。 🎆学习格言:不读书的人,思想就会停止。——狄德罗 ⛪️个人主页:进入博主主页 🗼专栏系列:Linux 随笔集合 …

必应bing国内广告推广怎么做,烧不烧钱?

必应Bing作为全球领先的搜索引擎之一,其国内广告平台提供了丰富而精准的广告资源,为众多企业带来极具性价比的品牌推广机会。然而,要想在必应Bing上取得理想的广告效果,并不一定意味着“烧钱”,而是需要通过科学的策略…

Spring日志框架

前言 本文我们简单说说关于Spring中的日志框架,以及对应的注解 我们知道,公司服务器在运行的时候,一定会打印日志,有很多优点,比如预防报警,或者是某重大事故尝试修复等等都需要查看日志 应该说日志对我们来说并不陌生,我们在之前刷题或者是程序遇到bug的时候也经常会将程序的状…

Databricks 开源 DBRX:一款功能强大的新型企业级语言模型

Databricks 公司发布了 DBRX,这是一款性能优异的大语言模型,在各项测试中均超越了现有的开源模型。DBRX 的目标是为企业提供高质量、可定制的 AI 工具,帮助企业更好地利用生成式 AI 技术。 DBRX 的一大亮点是其出色的性能。在语言理解、编程…

Redis 主从复制原理,设计的真巧妙!

前言 今天继续来看看有关 Redis 的一个问题,主从复制。通常,对于大多数的场景来说,读比写更多,于是对于缓存的水平扩展,其中的一个方式 “主从复制” 就是一个常见的思路。有了主从复制,那么可以扩展出很多…

Kibana操作Elasticsearch教程

文章目录 简介ES文档操作创建索引查看索引创建映射字段查看映射关系字段属性详解typeindexstore 字段映射设置流程 新增数据新增会随机生成id新增自定义id智能判断 修改数据删除数据查询基本查询查询所有(match_all)匹配查询多字段查询词条匹配多词条精确…

大模型预测,下一个token何必是文字?

太快了太快了… 大模型的生成技能,已经到了普通人看不懂的境界! 它可以根据用户过去5年的体检报告,生成未来第1年、第2年、第3年的体检报告。 你看,这个生成的过程,是不是像极了ChatGPT,根据历史单词预测…

测开——测试用例设计题

1.测试手机的短信功能需要考虑哪些测试点? 考测试思维 是否能正常打开或进入短信界面短信可以正常编辑、修改、删除短信可以正常发送、接收短信页面的字体、颜色显示是否正常【UI界面 手机设置了字体颜色 大小是否同步】短信的字体是否能够调整同时给多个人发短信…

工业测试测量仪器与人工智能(AI)如何结合

工业测试测量仪器与人工智能(AI)的结合可以通过多种方式实现,其中一些主要方法包括: 1. 数据分析和预测 智能数据分析:利用AI算法对从传感器和测试仪器收集的数据进行分析,识别模式、趋势和异常&#xff0…

vue+elementUI搭建动态表头的表格

前提:以下代码是vue2项目结合elementUi完成的 数据结构 后端传来的数据是两个list,一个表头的list,一个表格内容的list // 表头 headTableAtts: [{ columnLabel: 姓名, columnName: name },{ columnLabel: 年龄, columnName: age },{ colu…