git 撤销挂起的更改_git 入门教程之撤销更改

f0d9f038edb9daac63a163308905e432.png

撤销更改

撤销更改

相信你已经了解了 git 的基本概念,也清楚了工作区,暂存区和版本库的关系,现在让我们用所学的知识继解决实际问题吧!

背景

正常看得见的目录是我们最为熟悉的工作区,在工作中不可能总是100%的精力,难免会犯错,尤其是下午犯困,晚上加班更是如此.下面列举了常见的一些场景

  • 场景一: 工作区出现意外更改且尚未添加到暂存区

北京时间现在是晚上10点钟,你正在赶制一份工作报告,尽管心中一万个不愿意,还是不得不做.

开始模拟意外更改前,先查看一下 test.txt 文件相关信息:

# 列出当前目录的文件$ lsfile1.txt file2.txt file3.txt newFile.txt test.txt# 查看 `test.txt` 文件内容$ cat test.txtgit testgit initgit diffunderstand how git control versionhow git workgit tracks changes of files# 查看 `test.txt` 文件状态$ git statusOn branch masterChanges not staged for commit: (use "git add ..." to update what will be committed) (use "git checkout -- ..." to discard changes in working directory) modified: test.txtUntracked files: (use "git add ..." to include in what will be committed) .DS_Storeno changes added to commit (use "git add" and/or "git commit -a")# 查看 `test.txt` 文件差异$ git diff diff --git a/test.txt b/test.txtindex d31bdd2..56c76b7 100644--- a/test.txt+++ b/test.txt@@ -3,4 +3,4 @@ git init git diff understand how git control version how git work-git tracks changes+git tracks changes of files$ 

还记得在上一节中我们讲解 git 版本控制的到底是什么,为了证明 git 管理的是更改而不是文件本身,我们特意在第二次更改时没有添加到暂存区,现在我们先把这个遗留问题解决掉.

# 工作区更改添加到暂存区$ git add test.txt# 暂存区内容提交到版本没哭$ git commit -m "git tracks changes of files"[master b7bda05] git tracks changes of files 1 file changed, 1 insertion(+), 1 deletion(-)# 查看文件状态$ git statusOn branch masterUntracked files: (use "git add ..." to include in what will be committed) .DS_Storenothing added to commit but untracked files present (use "git add" to track)$ 

现在正在加班加点干活,一不小心将心中的不满表露出来了,于是有了下面的内容:

# 意外更改正是这么犯傻的一句话$ echo "My stupid boss still prefers svn" >> test.txt# 当前文件内容$ cat test.txtgit testgit initgit diffunderstand how git control versionhow git workgit tracks changes of filesMy stupid boss still prefers svn$ 

虽然强打精神,可还是很困,于是打算喝杯咖啡提提神,猛然发现 stupid boss 可能会让你丢掉这个月的奖金!

暗自庆幸,咖啡果然是个好东西,既然发现了问题,那就事不宜迟赶紧修复,因为不适宜的话正是 stupid boss ,所以你完全可以手动删除,但是假如你说了一大堆不合适的话,或者复制粘贴时弄错了,这就不是删除一两行那么简单了!

既然手动解决比较麻烦,那git 有没有什么好方法来解决这类问题呢?在寻求git帮助前,首先再看一下当前文件状态(git status).正所谓"知己知彼方能百战百胜

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值