git commit但未git push的情况下,git reset 的最佳实践是?

本文主题在执行git commit 成功且并未执行git push 将本次提交推送到远程仓库的情况下,若想撤销本次提交,最佳实践是怎样的呢?下面,请看:

图1
图1 git commit后,git push前的提交记录

 

假定,git commit后(还未执行git push),我们执行git log看到的提交记录如图1所示

我们可以看到:

最新一次的commit_id: dbd770c810c192c81d45ee5bb728a4a6f613b4a4

上一次的commit_id: 0c59412e237fc2a47ca60b0cc5ece004e80ed9d4


基于以上条件。接下来,我们直奔正题。

想要撤销最新一次的提交,即 commit_id 等于dbd770c810c192c81d45ee5bb728a4a6f613b4a4的修改,

我们有两种可选方案:


1、执行 git reset --hard commit_id

解释说明:这里的commit_id应该是图1中的 上一次提交id,即0c59412e237fc2a47ca60b0cc5ece004e80ed9d4。也就是说彻底放弃commit_id=dbd770c810c192c81d45ee5bb728a4a6f613b4a4的最新修改,恢复到修改前的原始状态。一旦执行成功,修改将不可找回!

2、git reset commit_id

解释说明:命令行的commit_id 同样应该是图1中标注出的 上一次提交id,即0c59412e237fc2a47ca60b0cc5ece004e80ed9d4。命令执行成功后,可以撤销git commit命令提交的最新修改,但发生修改的内容仍将保留在版本库当中(相当于回到最新一次 git commit 之前的 git add 状态)。

以上2种方式,应视具体情况而定!

如果觉得对您有所助益,欢迎点赞转发!下附本文头条号链接:

https://www.toutiao.com/i6670857182835114508/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值