何时使用“git add .”当“git add -A”[重复]
Posted
技术标签:
【中文标题】何时使用“git add .”当“git add -A”[重复]【英文标题】:When to use "git add ." and when "git add -A" [duplicate] 【发布时间】:2016-11-06 23:30:49 【问题描述】:目前,当我想提交并将内容推送到远程 Git 存储库时,我使用:
git add . //<--notice the dot here
git commit -m "some commit message"
git push
我看到很多人改用git add -A
。我读到了.
和-A
之间的区别,但我不清楚。
那么这两个命令是一样的吗?
如果不是,什么时候应该使用git add .
,什么时候应该使用git add -A
?
【问题讨论】:
【参考方案1】:git add .
仅添加您当前所在的文件夹,git add -A
添加存储库中的所有文件夹。
例如,如果您的 repo 名为 foo
,并且您位于文件夹 foo/bar
中,并且您更改了文件 foo/file1.pl
和 foo/bar/file2.pl
,则 git add .
只会暂存 file2.pl
而 git add -A
将暂存所有文件。
关于在哪里使用取决于您的工作方式的问题:如果您始终保持干净的仓库并且只更改应该提交的文件,那么您可以使用git add -A
,否则可能更明智使用git add .
甚至手动添加文件。话虽这么说,最好总是在最后做一个git status
,以确保你没有提交你不应该做的事情,因为一旦它被推送,就很难消除这些数据。
【讨论】:
对建议手动添加文件表示赞赏。它更安全,您可以掌控一切。【参考方案2】:git add -A
它将所有有变化的文件添加到存储库的所有文件夹中。
git add .
它添加当前文件夹中所有有变化的文件。
【讨论】:
【参考方案3】:从 git 2.0 版开始,默认是git add -A
来自发行说明:https://git.kernel.org/cgit/git/git.git/tree/Documentation/RelNotes/2.0.0.txt
git add <path>
现在与git add -A <path>
相同,所以git add dir/
会注意到您从目录中删除的路径和 记录删除。在旧版本的 Git 中,使用了git add <path>
忽略删除。你可以说git add --ignore-removal <path>
如果你真的想的话,只添加添加或修改的路径。
【讨论】:
【参考方案4】:混帐添加。从当前目录和子目录添加更改的文件。 git add -A 从所有目录中添加更改的文件。
【讨论】:
以上是关于何时使用“git add .”当“git add -A”[重复]的主要内容,如果未能解决你的问题,请参考以下文章
“git add -u”和“git add -A”有啥区别?