阐述 Git 命令 reset 和 revert

2024-04-26 07:20
文章标签 命令 reset git 阐述 revert

本文主要是介绍阐述 Git 命令 reset 和 revert,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 概述

由于某次或某几次提交的代码污染了远程分支,需要对远程分支代码进行恢复操作,此时可以通过 git 的 reset 和 revert 命令进行恢复。

HEAD 是指向当前分支的最新提交的指针 ,每一次提交代码都会产生一个 commit id 来标识工作区的变更与改动。

2 Git Reset

git reset 的作用是将分支代码回滚到指定版本(即指定的代码提交点)上。

步骤:

(1)使用 “git log” 命令查看当前分支的提交记录。

(2)使用 “git reset --hard 某次提交的 commit id” 命令将本地的 HEAD 指向指定的版本上。

再次使用 “git log” 命令提交记录,确认本地分支的 reset 操作是否成功了。

(3)使用 “git push -f” 命令强行将变动推送到远程分支上,使远程分支的 HEAD 指向指定的版本上。

3 Git Revert

git revert 是用来删除某一次提交的内容。我们会发现在分支上面创建了一个新的 commit 提交。

步骤:

(1)使用 “git log” 命令查看当前分支的提交记录。

(2)使用 “git revert 某次提交的 commit id” 命令来删除某一个 commit 提交的内容。

当前版本与需要删除的版本之间有其他提交内容时,当都修改了同一个文件时,可能需要手动解决冲突。

(3)将本地变动推送到远程分支上。

4 总结

git reset 和 git revert 都是属于重新恢复工作区的方式,但这两种操作有着截然不同的结果:

(1)git reset 是将当前版本与指定版本之间的所有历史提交日志和提交内容全部删掉,将 HEAD 指向自己指定的提交版本,即回滚到指定版本。

(2)git revert 是只将指定的某次提交内容删除掉,不会删除历史提交日志。

如果当前版本与指定版本之间有其他提交内容时,其他提交内容和历史提交记录都不会被删除。

当指定版本与其他提交内容都修改了同一个文件时,可能需要手动解决冲突。

5 参考文献

(1)https://www.modb.pro/db/137424

这篇关于阐述 Git 命令 reset 和 revert的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/936936

相关文章

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

postgresql数据库基本操作及命令详解

《postgresql数据库基本操作及命令详解》本文介绍了PostgreSQL数据库的基础操作,包括连接、创建、查看数据库,表的增删改查、索引管理、备份恢复及退出命令,适用于数据库管理和开发实践,感兴... 目录1. 连接 PostgreSQL 数据库2. 创建数据库3. 查看当前数据库4. 查看所有数据库

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢