我认为我在vscode控制台中看到了git commit
git add -A -- .
我知道
git add -A
手段
但是什么
git add -A -- .
意思 ?
--
此选项可用于将命令行选项与文件列表分开(当文件名可能被误认为是命令行选项时很有用)。
这是不言自明的。此外,.
表示目前的目录。
因此,该命令有效地意味着对所有文件进行分级,即“将当前目录和子目录中的所有跟踪和未跟踪文件(包括删除)添加到git索引”。
来自git-add(1)
-A, --all, --no-ignore-removal
Update the index not only where the working tree has a file matching <pathspec> but also where the index already has an entry. This adds, modifies, and removes index entries to match the working
tree.
If no <pathspec> is given when -A option is used, all files in the entire working tree are updated (old versions of Git used to limit the update to the current directory and its subdirectories).
并且--
用于将论据与<pathspec>
s分开。
所以,qazxsw poi广告并将整个工作树更新到git的舞台区域,而qazxsw poi广告和更新当前目录(和子目录),用git add -A
确定。
这个命令
git add -A -- .
-A, - all与-u相似,但除了索引之外还匹配工作树中的文件。这意味着它将找到新文件以及暂存已修改的内容并删除不再在工作树中的文件。
而这个吼叫
getcwd(3)
错误:打开(“error.txt”):权限被拒绝错误:无法索引文件error.txt
对于--ignore-errors,仍然存在错误,但不是任何致命错误。
贝娄是来自git add -A --
的更多细节命令
.
-A --all --no-ignore-removal不仅更新工作树具有文件匹配的索引,还更新索引已有条目的位置。这将添加,修改和删除索引条目以匹配工作树。
如果在使用-A选项时未给出,则更新整个工作树中的所有文件(旧版本的Git用于限制对当前目录及其子目录的更新)。
--no-all --ignore-removal通过添加索引未知的新文件和工作树中修改的文件来更新索引,但忽略已从工作树中删除的文件。当没有使用时,该选项是无操作。
此选项主要用于帮助习惯于旧版本Git的用户,其“git add ...”是“git add --no-all ...”的同义词,即忽略已删除的文件。
-N --intent-to-add仅记录稍后添加路径的事实。路径的条目放在索引中,没有内容。除了其他方面,这对于使用git diff显示此类文件的非暂存内容并使用git commit -a提交它们非常有用。
--refresh不添加文件,只刷新索引中的stat()信息。
--ignore-errors如果由于索引错误而无法添加某些文件,请不要中止操作,而是继续添加其他文件。该命令仍将以非零状态退出。配置变量add.ignoreErrors可以设置为true以使其成为默认行为。
--ignore-missing此选项只能与--dry-run一起使用。通过使用此选项,用户可以检查是否将忽略任何给定文件,无论它们是否已存在于工作树中。
--no-warn-embedded-repo默认情况下,git add会在向索引添加嵌入式存储库时发出警告,而不使用git子模块add来在.gitmodules中创建一个条目。此选项将禁止警告(例如,如果您在子模块上手动执行操作)。
--renormalize将“clean”进程全新应用于所有跟踪的文件,以强制将它们再次添加到索引中。在更改core.autocrlf配置或text属性以更正添加了错误的CRLF / LF行结尾的文件后,这很有用。此选项表示-u。
--chmod =(+ | - )x覆盖添加文件的可执行位。可执行位仅在索引中更改,磁盘上的文件保持不变。
- 此选项可用于将命令行选项与文件列表分开(当文件名可能被误认为是命令行选项时很有用)。
组态