Git那些事-如何撤销暂存区的文件

 在Git的操作中,有时在将本地仓库中已修改的文件添加到暂存区时,会出现添加了"错误"文件的情况(这里的错误指的是这些文件我们并不需要上传到远程仓库)。这就需要我们将添加到暂存区中"错误"的文件恢复到本地仓库中。在这篇文章中介绍Git关于添加和撤销存入暂存区文件的操作。

 Git中文件存在三种状态:已修改(modify);已暂存(staged)已提交(committed)

  • 已修改(modify): 表示修改了文件,但还没有保存到数据库中(这里的数据库有两层含义:指本地和远程数据库)
  • 已暂存(staged): 表示对一个已修改的文件的当前版本做了标记,已经存入了本地仓库中了(还未存入到远程仓库)。
  • 已提交(committed): 表示已修改的文件存入到了远程仓库中。

 我们想要操作的是修改的文件处于已暂存的状态。

1、将已修改的文件的状态变为已暂存状态:

#1、将所有的已修改的文件变为已暂存状态
git add .

#2、将某个指定的文件夹下的所有文件或者特定文件变为已暂存状态

git add ASW/a.c   # 将ASW文件夹下的a.c文件存入暂存区
git add ASW/.     # 将ASW文件夹下的所有文件存入暂存区

2、将已暂存的文件的状态变为已修改状态:

# 1、撤销所有暂存区中的文件(变为已更改的状态)

git reset .

# 2、撤销暂存区中某个文件夹下的所有文件和某个特定的文件(变为已更改的状态)

git reset HEAD ASW/a.c    # 将ASW文件夹下的a.c文件从已暂存的状态恢复到已修改
git reset HEAD ASW/.      # 将ASW文件夹下的所有文件从已暂存的状态恢复到已修改

3、将已修改的文件变为最初的状态:

# 1.将所有已修改的文件变为初始状态
git checkout -- .

# 2、将某个文件夹下的所有已修改文件和某个文件夹下的指定的已修改文件变为初始状态

git checkout -- ASW/.
git checkout -- ASW/a.c

欢迎关注我的微信公众号:奈斯的工作空间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值