首页 > 其他分享 >如何回退未push的commit?

如何回退未push的commit?

时间:2023-05-04 14:45:36浏览次数:28  
标签:pull git 代码 回退 push commit 暂存

如何回退未push的commit?教你一招,简单好用

当你写完代码,提交了commit后,才发现分支错了,或者是下面这种情况(其他小伙伴协同开发,在一个分支上push了代码,但你不清楚,在未pull的情况下,先commit了你的代码),当你push代码时,会有以下报错:

 提示让你merge,先别管他,此时去看一看git仓库,发现是有人前面偷偷提交了代码,所以,我们要将commit同步一下,首先:

 git reset --soft HEAD^:这一步,相当于将你的commit同步到你本地的最初状态,但是本地修改的代码还是被暂存下来了,不会丢失,可以看下状态:

 提示你git pull:

 git pull 又提示有代码需要merge,不要紧,你将它stash暂存一下:

 然后再git pull,与远程同步代码:

 此时,别忘了,取出暂存区的代码:

 注意:我只有一个暂存,所以直接用的pop(全部取出),如果不需要全部,但也可以单个取出,我的另一篇文章有讲,具体不在这里讲述(链接:https://www.cnblogs.com/wx3091/p/13578887.html)。

然后我们终于解决了冲突,并且与远程代码保持了一致,此时我们再提交本地代码,就不会报错了。

 

标签:pull,git,代码,回退,push,commit,暂存
From: https://www.cnblogs.com/wx3091/p/17371163.html

相关文章

  • Git - commit a single file
    Use'gitcommit-m<commit_message>--<path_to_file>'tocommitasinglefile. $>gitstatusOnbranchmainYourbranchisuptodatewith'origin/main'.Changestobecommitted:(use"gitrestore--staged<file......
  • commitlint.config的配置和中文文档(附使用示例)
     https://blog.csdn.net/qq_38290251/article/details/111646491https://blog.csdn.net/qq_21197033/article/details/128609033 TRANSLATEwithxEnglishArabicHebrewPolishBulgarianHindiPortugueseCatalanHmongDawRomanianChineseSimpl......
  • git 配置commit-msg
    git配置commit-msg#安装huskynpminstallhusky-D#设置运行脚本并运行npmset-scriptprepare"huskyinstall"npmrunprepare#安装commitlint根据操作系统选一种#Installandconfigureifneedednpminstall--save-dev@commitlint/{cli,config-conventional......
  • 配置.husky和commitlint以及Eslint
    代码规范ESLint+Prettier(项目是基于uniapp+vue3+ts)无脑执行以下操作,让你在vue3+ts的项目中愉快的使用eslint和prettier。npminstalleslintprettier--save-devnpminstalleslint-config-prettiereslint-plugin-prettiereslint-plugin-vue--save-devnpminstall......
  • git撤销刚才的commit
    在我们使用git作为版本控制工具进行代码管理之后,经常性的会碰到一个问题:gitcommit后,如何撤销commit,下面详细讲一下。gitaddnewFilesgitcommit-m'新增xx页面'执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?解决方案:我们可以使用命令:gitreset--softHEAD^ 这样......
  • git:回滚commit但未push代码
    这个场景经常出现,发现合并分支(从A分支合并到B分支)后,该分支(B分支)没有push提交权限,所以只能回滚(回滚B分支)合并merge后的记录,保持B分支干净,回到从前。gitlog查看提交日志命令:gitlog输入q则退出输出结果如下所示:解析:commit后是每次提交的唯一标志,从上往下时间是从近到远......
  • 修改Git全部Commit提交记录的用户名Name和邮箱Email
    当我们换邮箱了,想把已经提交过的commit的邮箱和用户名改成新的时候。先把本地配置成新的gitconfiguser.name'丁少华'gitconfiguser.email'新邮箱@xx.com'这时候就可以用下面的脚本代码了在项目根目录下创建email.sh写入下面这段代码#!/bin/shgitfilter-branch......
  • Git 提交 commit 的步骤
    将更改内容提交到暂存首先把你项目下所有的更改内容提交到暂存区中,或者选择性的把需要提交到远程仓库的文件提交到暂存区。#将所有内容提交到暂存区gitadd.#将部分内容提交到暂存区gitaddtest.vuehello.vueutils.ts查看暂存区文件状态在提交之前可以查看你当前项......
  • git执行push操作时报错:remote: xxx: Incorrect username or password (access token)
    问题:最近用gitpush项目到gitee时报错,提示信息如下:remote:xxx:Incorrectusernameorpassword(accesstoken)fatal:Authenticationfailedfor'https://gitee.com/xxx/xxx.git/'想了一下,原来是几天前我把gitee的密码给改了,所以原先git存留的密码就失效了解决方案清......
  • Git Tip: git push ‘No refs in common and none specified’
    评:@seehttp://www.thebuzzmedia.com/git-tip-git-push-no-refs-in-common-and-none-specified/Gitisasource-controltoolusedbysoftwaredevelopers.IrecentlyswitchedfromSubversiontoGitandwhilethingshavebeenmostlysmooth,therehavebeena......