玩转git add

玩转git add

git在本地有三个工作区域:本地工作区、暂存区、本地版本库。git add命令是将本地工作区的代码提交到暂存区。git add命令也常被叫做“添加”。

1、git add

git add后面可以跟不同的参数表示不同的添加方式,常用的有下面几种:

  • git add <file-name>
    将本地工作区中指定的文件提交到暂存区;

  • git add .
    将本地工作区中所有的修改的、新添加的文件提交到暂存区,不包括删除的文件;

  • git add -u
    将本地工作区中所有修改的、删除的文件提交到暂存区,不包括新添加的文件;

  • git add -A
    将本地工作区中所有修改的、删除的、新添加的文件提交到暂存区;

2、git add文件后想撤销,怎么办?

经常会遇到在执行git add之后,发现自己添加错了文件,这个时候该怎么办呢?git reset命令给了我们补救措施。

git add相类似,git reset命令后面可以跟不同的参数表示不同的撤销方式,常见的有以下几种:

  • git reset HEAD
    撤销最近一次提交

  • git reset HEAD <file-name>
    撤销指定文件的提交

补充:
2019/10/18
一次“惨痛”经历让我深刻了解到git add .git add -A的区别,以前看这两个命令的时候觉得差不多,平时在开发时用git add .都能满足需求,最近在开发过程中,发现之前已存在的文件夹的名称大小写错了,于是更改文件夹的大小写,修改完成后,git status后可以看到旧的文件夹及内部文件都会被删除、修改后的文件夹内的文件被视为新增文件,此时,使用git add .对此次修改进行提交,提交完成后,发现在gitlab中新旧文件夹都存在,这就很麻烦了,于是只能手动在gitlab将大小写错误的文件夹内的文件一一删除(还好文件不多),之后,将远程代码pull到本地,pull下来之后会将本地修改大小写后文件夹及内部文件删除,此时我们只需要撤销这些删除即可,这样才解决了修改文件夹名大小写后使用git add .命令造成远程仓库存在新旧两个文件夹的bug,回过头来,如果当初修改完大小写名称后,使用git add -A命令,将本地所有的操作(修改、删除、新增文件)提交到远程,就不会出现上述问题!

参考文献

[1] 【git】git add 添加错文件 撤销
[2] Git 基础 - 撤消操作

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值