Git 撤销修改总结

开始使用Git版本管理仓库开始管理代码,在本地仓库进行修改时,总会存在修改发生错误,需要我们撤销修改,但是修改在不同的地方,撤销修改的方法不同,下面总结我在使用Git的时候遇到的问题。

使用Git,要能够很好的明白工作区、暂存区、本地仓库、远程仓库这几个概念。

(1)我们首先在工作区进行编辑代码,保存代码之后,如果想撤销工作区的修改,让工作区的内容返回到最近一次git add或者git commit的状态,需要使用git checkout -- filename 语句。

例如在git下的git.txt文件里插入一句话,保存,利用git status查看工作区的内容,可以看到提示在git.txt里进行了修改,且没有add和commit,这个时候想撤销插入修改,使用git checkout -- git.txt语句,记性撤销。

结果如下所示,工作区已经恢复如初。

(2)我们做的修改,一不小心被我们add到暂存区,还是想要撤销修改,可以使用git reset HEAD filename语句来撤销修改。如下,我们使用git add git.txt 语句,将git.txt修改放到暂存区,git status一下,我们可以看到,修改已经放到暂存区里面了。如果想从暂存区撤销修改,把暂存区的修改撤销,重新放回工作区,我们需要通过git reset HEAD git.txt 语句进行撤销。

在撤销之前,做一些操作,在git.txt文件中,添加一行,并保存,git status可以看到一个修改在工作区,一个修改在暂存区。

执行git reset HEAD git.txt后,git status可以看到,修改只在工作区,暂存区已经没有修改了,如果想继续撤销修改,可以使用工作区撤销修改的办法进行撤销修改。

(3)如果你非常头疼, 犯了糊涂,把错误的修改commit到本地仓库了,该怎么办呢,能不能撤销修改呢,答案是:可以的。加入你在git.txt文件里加了两行,add和commit到本地仓库之后,发现犯了致命性的错误,需要撤销修改,应该怎么做呢?

首先我们可以通过git log命令查看最近的提交日志,通过提交日志我们可以看出最近提交的日志,以及提交的ID,我们就是通过commit id来进行撤销仓库修改的。

通过git reset  --hard commit id语句进行撤销修改。git log可以看到,最新的commit 被撤销了,只剩下两个修改。

总结:撤销工作区的修改,利用git checkout -- filename

撤销暂存区的修改。利用git reset HEAD filename

撤销本地仓库的修改,利用git reset --hard filename

如果你已经和网上的仓库进行了merge,那就真的没有办法撤销了,只能自求多福了。

 

有问题请留言...............

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值