git add -A 和 git add . 的区别详解

 更新时间:2020年07月22日 14:38:17   作者:CaseyWei  
这篇文章主要介绍了git add -A 和 git add . 的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

git的分支与合并的两种方法

git add -A和 git add .   git add -u在功能上看似很相近,但还是存在一点差别

git add . :他会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。

git add -u :他仅监控已经被add的文件(即tracked file),他会将被修改的文件提交到暂存区。add -u 不会提交新文件(untracked file)。(git add --update的缩写)

git add -A :是上面两个功能的合集(git add --all的缩写)

下面是具体操作例子,方便更好的理解(Git version 1.x):

git init
echo Change me > change-me
echo Delete me > delete-me
git add change-me delete-me
git commit -m initial
 
echo OK >> change-me
rm delete-me
echo Add me > add-me
 
git status
# Changed but not updated:
#  modified:  change-me
#  deleted:  delete-me
# Untracked files:
#  add-me
 
git add .
git status
 
# Changes to be committed:
#  new file:  add-me
#  modified:  change-me
# Changed but not updated:
#  deleted:  delete-me
 
git reset
 
git add -u
git status
 
# Changes to be committed:
#  modified:  change-me
#  deleted:  delete-me
# Untracked files:
#  add-me
 
git reset
 
git add -A
git status
 
# Changes to be committed:
#  new file:  add-me
#  modified:  change-me
#  deleted:  delete-me

总结:

  • ·  git add -A  提交所有变化
  • ·  git add -u  提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
  • ·  git add .  提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件

git版本不同会有所区别:

Git Version 1.x: 

Git Version 2.x: 

 

到此这篇关于git add -A 和 git add . 的区别详解的文章就介绍到这了,更多相关git add -A 和 git add . 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用openssl实现私有CA的搭建和证书的颁发

    使用openssl实现私有CA的搭建和证书的颁发

    这篇文章主要介绍了使用openssl实现私有CA的搭建和证书的颁发,使用openssl搭建私有CA,openssll和私有CA搭建相关的配置文件,里面包含了很多和证书相关的设置,后续创建对应文件的时候需要根据配置文件中的信息进行创建,需要的朋友可以参考下
    2022-10-10
  • git rebase 成功之后撤销的操作方法

    git rebase 成功之后撤销的操作方法

    这篇文章主要介绍了git rebase 成功之后如何撤销,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 在kali上安装AWVS的图文教程

    在kali上安装AWVS的图文教程

    这篇文章主要介绍了在kali上安装破解AWVS的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • 使用Python解决Windows文件名非用反斜杠问题(python 小技巧)

    使用Python解决Windows文件名非用反斜杠问题(python 小技巧)

    要想让你的 Python 代码同时在 Windows 和 Mac/Linux 上工作,你需要处理不同系统文件名用不同斜杠的问题。而 Python 3 有一个名为「pathlib」的新模块,可以帮你解决这个麻烦,需要的朋友可以参考下
    2019-11-11
  • 常用的Git便捷操作合集

    常用的Git便捷操作合集

    虽然现在有很多图形化的 Git 工具,但是命令行依然 yyds。本文记录了工作中很有用的一些 Git 操作,感兴趣的小伙伴可以跟随小编一起了解一下
    2022-09-09
  • 利用git克隆历史版本(下载指定版本的代码)

    利用git克隆历史版本(下载指定版本的代码)

    这篇文章主要介绍了利用git克隆历史版本(下载指定版本的代码),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • git 报错:OpenSSL SSL_read: Connection was reset, errno 10054 解决方法

    git 报错:OpenSSL SSL_read: Connection was&

    这篇文章主要介绍了git 报错:OpenSSL SSL_read: Connection was reset, errno 10054 解决方法,涉及git配置信息及缓存相关操作技巧,需要的朋友可以参考下
    2023-04-04
  • 大型网站架构演变和知识体系

    大型网站架构演变和知识体系

    之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的、ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变
    2009-01-01
  • 如何让Visual Studio用上chatgpt

    如何让Visual Studio用上chatgpt

    这篇文章主要介绍了如何让Visual Studio用上chatgpt,Visual chatGPT Studio是Visual Studio的一个免费扩展,它直接在IDE中添加了chatGPT功能,它允许用户以可以根据菜单功能的方式使用chatGPT,需要的朋友可以参考下
    2023-05-05
  • Azkaban3.81.x部署过程及遇到的坑

    Azkaban3.81.x部署过程及遇到的坑

    这篇文章主要介绍了Azkaban3.81.x部署过程详细介绍及遇到的坑,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05

最新评论