时光机穿梭

本文介绍了Git的版本回退和工作区管理。通过实例展示了如何使用Git进行版本回退,从历史版本中恢复文件,以及如何管理工作区内的修改和删除操作。重点讲解了Git的暂存区概念,强调Git管理的是修改而非文件,使得版本控制更为高效。
摘要由CSDN通过智能技术生成

我们已经成功地添加并提交了一个readme.txt文件,我们来试着修改readme.txt文件,改成如下内容:

Git is a distributed version control system.
Git is free software.

现在运行git status命令看看结果:

[root@localhost learngit]# git status
位于分支 master
尚未暂存以备提交的变更:
  (使用 "git add <文件>..." 更新要提交的内容)
  (使用 "git restore <文件>..." 丢弃工作区的改动)
	修改:     readme.txt

修改尚未加入提交(使用 "git add" 和/或 "git commit -a"

git status命令可以让我们时刻掌握仓库当前地状态,上面地命令输出告诉我们,readme.txt被修改了,但还没有准备提交的修改。

虽然Git告诉我们readme.txt被修改了,但如果能看看具体修改了什么内容,自然是很好的。比如你休假两周从国外回来,第一天上班,已经记不清上次怎么修改的readme.txt,所以,需要用git diff这个命令看看:

[root@localhost learngit]# git diff
diff --git a/readme.txt b/readme.txt
index 46d49bf..c2a1c8a 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,2 +1,2 @@
-Git is a version control system.
+Git is a distrubuted version control system.
 Git is free software.

git diff顾名思义就是查看difference,显示的格式正是Unix通用的diff格式,可以从上面的命令输出看到,我们在第一行添加了一个distributed单词。

知道了对readme.txt作了什么修改后,再把它提交到仓库就放心多了,提交修改和提交新文件是一样的两步,第一步是git add

# git add readme.txt

第二步是git commit,在运行第二部之前,我们可以用git status看看当前仓库的状态:

# git status
位于分支 master
要提交的变更:
  (使用 "git restore --staged <文件>..." 以取消暂存)
	修改:     readme.txt

git status告诉我们,将要被提交的修改包括readme.txt,下一步,就可以放心地提交了:

# git commit -m "add distributed"
[master 2b58795] add distributed
 1 file changed, 1 insertion(+), 1 deletion(-)

提交后,我们再用git status命令看看仓库的当前状态:

# git config --global aqiang
error: 键名没有包含一个小节名称:aqiang
[root@localhost learngit]# git status
位于分支 master
无文件要提交,干净的工作区

Git告诉我们当前没有需要提交的修改,而且,工作目录是干净(working tree clean)的。

1. 版本回退

现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,在线洗一次,修改readme.txt文件如下:

Git is a distributed version control system.
Git is free software distributed under the GPL.

然后尝试提交:

# git add readme.txt
# git commit -m "append GPL"
[master ece3383] append GPL
 1 file changed, 1 insertion(+), 1 deletion(-)

像这样,你不断对文件进行修改,然后不断提交修改到版本库里,就好比玩RPG游戏时,每通过一关就会自动把游戏状态存盘,如果某一关没过去,你还可以选择读取前一关的状态。有些时候,在打Boss之前,你会手动存盘,以便万一打Boss失败了,可以从最近的地方重新开始。Git也是一样,每当你觉得文件修改到一定程度的时候,就可以“保存一个快照”,这个快照在Git中被称为commit。一旦你把文件改乱了,或者误删了文件,还可以从最近的一个commit恢复,然后继续工作,而不是把几个月的工作成果全部丢失。

现在,我们回顾一下readme.txt文件一共有几个版本被提交到Git仓库里了:

版本1:wrote a readme file


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值