首页 > 其他分享 >git 本地回滚提交

git 本地回滚提交

时间:2023-11-15 10:22:36浏览次数:37  
标签:reset 回滚 git 提交 本地 远程

要回滚远程提交,你需要先在本地回滚提交,然后将本地的修改推送到远程仓库。以下是一般的步骤:
最好提前先git pull同步一下

  1. 首先,使用 git log 命令查看要回滚的提交的哈希值:

    git log
    

    找到你要回滚的提交的哈希值。

  2. 然后使用 git revert 命令回滚指定的提交:

    git revert <commit-hash>
    

    这将会创建一个新的提交,撤销指定的提交的更改。

  3. 确认本地回滚操作没有问题后,将本地的修改推送到远程仓库。如果你是在主分支上操作,可以使用以下命令:

    git push origin <branch-name>
    

    如果你是在其他分支上操作,可以使用以下命令:

    git push origin <branch-name>:<remote-branch-name>
    

    请注意,这里的 <branch-name> 是你当前所在的本地分支,<remote-branch-name> 是你要推送到的远程分支。

以上步骤将会回滚远程提交并将回滚后的修改推送到远程仓库。请确保你了解回滚操作的影响,并在进行操作前做好必要的备份。

如果你回滚了本地的提交,导致本地的提交历史落后于远程仓库,可以尝试以下步骤来解决这个问题:

  1. 确保你的本地仓库是干净的,没有未提交的更改和未解决的合并冲突。可以使用以下命令来查看当前的状态:

    git status
    

    如果有未提交的更改或者未解决的合并冲突,请先处理它们。

  2. 使用 git pull 命令来尝试拉取远程仓库的更新:

    git pull origin <branch-name>
    

    如果拉取过程中出现冲突,需要解决冲突并提交更改。

  3. 如果 git pull 仍然无法拉取远程仓库的更新,可以尝试使用强制拉取的方式:

    git fetch --all
    git reset --hard origin/<branch-name>
    

    这将会强制将本地分支重置到和远程分支一致的状态。请注意,git reset --hard 命令会丢失本地未提交的更改和未保存的工作,请确保你的本地没有重要的未提交更改。

  4. 最后,如果你的本地分支已经和远程分支一致,你就可以再次尝试提交你的更改了。

希望这些步骤能够帮助你解决问题。如果你还有其他问题,请随时提问!

补充 以上都不行尝试以下方法(亲测可用)

  1. 用git log命令找到commit Id
  2. reset 回退本地提交hash
    git reset --hard [commit id]
    
  3. 将本地修改强制push到远程仓库
    git push --force
    

git回滚命令reset、revert的区别
git revert 是生成一个新的提交来撤销某次提交,此次提交之前的commit都会被保留.
git reset 是回到某次提交,提交及之前的commit都会被保留,但是此次之后的修改都会被退回到暂存区.
总结: 感觉一般git reset 用的比较多,你也不用担心,你的修改的代码丢失,它默认会放到暂存区,你再commit就可以看到你的修改。

参考资料

gitlab不能强制提交设置
https://blog.csdn.net/inthat/article/details/108405227
image

标签:reset,回滚,git,提交,本地,远程
From: https://www.cnblogs.com/codedingzhen/p/17831932.html

相关文章

  • GitHub Universe 2023:AI 技术引领软件开发创新浪潮
    GitHub是全球领先的软件开发和协作平台,数百万开发者和企业在此分享、学习和创建卓越的软件。同时GitHub处在AI技术前沿,通过其先进的AI技术增强开发者体验并赋能未来软件开发的使命。在今天的文章中,我们将一起看看在GitHub年度大会上都有哪些更新。 GitHub2023九大更......
  • GIT入门
    #GIT笔记安装地址[GitHub下载](https://git-for-windows.github.io/ )[官网下载]( https://git-scm.com/download)##创建库1.初始化库gitinit初始化后产生.git文件2.添加唯一标识  gitconfig--globaluser.name"用户名"  gitconfig--globa......
  • Git提交上传报错 :提交的时候有个文件一直依然显示未提交,提交了还是没用 。fatal: will
    解决办法:修改文件名称,再重新提交,再改回来就可以了。原因分析:母鸡啊......
  • 如何快速访问GitHub
    原理计算机在访问远程网站时,输入的是诸如baidu.com的域名,但实际访问的是IP地址,这就需要一个解析器将域名解析为IP地址。计算机的策略如下:寻找本机的hosts文件,根据里面的映射规则进行映射。如果1找不到,那么就请求最近的DNS解析器(全球官方提供),从而获取网站的IP地址。我们访问G......
  • Git
    一、Git安装 概述:Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具。 下载安装:下载地址:https://git-scm.com/下载后傻瓜式一键安装,建议安装在英文目录下安装完成后在桌面右击哪看到以下Git选项......
  • 关于在企业中git开发的使用流程及规范
    标准的Git开发流程通常包括以下几个主要分支:主分支(main/master)、开发分支(develop)、功能分支(feature)、发布分支(release)、紧急修复分支(hotfix)等。同时,Git规范也有一些通用的最佳实践,可以帮助团队更好地使用Git进行项目管理。标准的Git开发流程:主分支(main/master):主分支是整个代码库的......
  • 自定义 Git Hook
    前言前端同学大概都熟悉husky这个工具,他可以直接在项目中添加githooks,主要解决了githooks不会同步到git仓库的问题,保证了每个开发人员的本地仓库都能执行相同的githooks。但是husky毕竟是一个JS生态的工具,依赖于npm安装和npm的scripthook才能达到最佳效果......
  • 如何利用Git进行团队协作?
    在现代软件开发中,版本控制已经成为了不可或缺的工具。Git是一种非常流行的分布式版本控制系统,它可以帮助团队协作开发,保证代码的安全性和可维护性。在本文中,我们将探讨如何利用Git进行团队协作。一、Git基础知识Git基础知识是进行团队协作的必要前提。在这里,我们简单介绍几个基......
  • git快速上传代码
    ①gitinit;初始化git,之后在文件夹里有.git文件,这个需要勾选才能查看。②gitremoteaddtesthttps://gitee.com/luo-xuesong/my-fisrt-test.git这里的test是自定义的,https://gitee.com/luo-xuesong/my-fisrt-test.git是远程仓库③gitbranch-a这里是查看分支④gitpu......
  • git拉取失败问题
    错误提示:ITISPOSSIBLETHATSOMEONEISDOINGSOMETHINGNASTY!Someonecouldbeeavesdroppingonyourightnow(man-in-the-middleattack)!Itisalsopossiblethatahostkeyhasjustbeenchanged.ThefingerprintfortheRSAkeysentbytheremotehostisSHA25......