32

好的,所以当我遇到“从已从磁盘中删除的 Git 存储库中删除多个文件”时,我正在搜索“如何从 Git 中删除手动删除的文件”,而实际上并没有为每个文件做任何事情。git rm file.txt

投票最多的两个命令是:

  • git add -u
  • git add -A

尽管它们都对我有用,但我仍然无法理解其中的区别,并且页面上的解决方案也没有解释。我的问题是,它们有何不同,还有哪些其他 git 命令可用于删除已从磁盘手动删除的文件?

4

2 回答 2

40

简要回答:

git add -A 等于 git add . + git add -u


解释:

当您执行“ git add .”时,它会将所有文件(现有的、修改的和新的)添加到暂存区,但不会删除已从磁盘中删除的文件。

" git add -u" 仅将当前跟踪的文件(已修改)添加到暂存区,并检查它们是否已被删除(如果是,则将它们从暂存区中删除)。这意味着它不会暂存新文件。

执行“ git add -A”会执行这两个步骤,即按原样暂存整个目录。


概括:

  • git add -A: 舞台一切
  • git add -u:仅阶段修改的文件
  • git add .: 暂存所有内容,不删除文件

阅读文档以获取更多信息。

于 2013-02-21T20:11:10.763 回答
10

git add -A将跟踪新的、修改的和删除的文件

git add -u将跟踪修改和删除的文件

于 2015-01-09T04:53:14.993 回答