好的,所以当我遇到“Removing multiple files from a Git repo that have already been deleted from disk”时,我正在搜索“如何从Git中删除手动删除的文件”而不对每个文件实际执行git rm file.txt
。< / p>
两个最受欢迎的命令是:
git add -u
git add -A
虽然它们都适合我,但我仍然无法理解其中的差异,而且页面上的解决方案也没有解释。我的问题是,它们如何彼此不同,以及可以使用哪些其他git命令来删除从磁盘手动删除的文件?
答案 0 :(得分:21)
git add -A
等于 git add .
+ git add -u
执行“git add .
”时,将所有文件(现有,已修改和新增)添加到暂存区域,但不会删除已从磁盘中删除的文件
“git add -u
”仅将当前跟踪的文件(已修改)添加到暂存区域,并检查它们是否已被删除(如果是,则从暂存区域中删除它们)。这意味着它不会暂存新文件。
执行“git add -A
”执行这两个步骤,即按原样分阶段整个目录。
git add -A
:阶段一切 git add -u
:只有修改过的文件 git add .
:暂存所有内容,不包含已删除的文件 阅读Documentation了解更多信息。
答案 1 :(得分:6)
git add -A
将跟踪新的,已修改和已删除的文件
git add -u
将跟踪修改和删除的文件