warning: You ran ‘git add’ with neither ‘-A (—all)’ or ‘—ignore-removal’, whose behaviour will change in Git 2.0 with respect to paths you removed. Paths like ‘.env.example’ that are removed from your working tree are ignored with this version of Git.
Run ‘git status’ to check the paths you removed from your working tree. 报错 如何解决
这个报错的引起是卓伊凡在git add .的过程就报错了
在 Git 版本控制系统中,git add .
是一个常用的命令,下面为你详细介绍其作用、工作原理及相关注意事项。
git add .
命令的主要作用是将当前工作目录下所有被修改或新增的文件添加到 Git 的暂存区(也称为索引)。暂存区是一个中间区域,用于准备要提交到本地仓库的文件集合。通过将文件添加到暂存区,你可以精细地控制哪些修改会被包含在接下来的提交中。
假设你有一个 Git 仓库,其中包含以下文件结构:
project/
├── file1.txt
├── file2.txt
├── subdirectory/
│ └── file3.txt
当你对 file1.txt
进行了修改,并且在 subdirectory
中新增了 file4.txt
文件,然后执行 git add .
命令,Git 会将 file1.txt
的修改以及新创建的 file4.txt
文件都添加到暂存区。
git add
命令的对比git add <filename>
:该命令用于将指定的单个文件添加到暂存区。例如,git add file1.txt
只会将 file1.txt
文件添加到暂存区。git add --all
或 git add -A
:这两个命令的作用是将工作目录中所有被修改、新增和删除的文件都添加到暂存区,包括那些位于子目录中的文件。与 git add .
不同的是,git add --all
还会处理被删除的文件,而 git add .
在某些情况下可能会忽略已删除的文件。git add .
会包含当前目录下的隐藏文件(以 .
开头的文件),如果你不想将某些隐藏文件添加到暂存区,可以使用 .gitignore
文件来排除它们。git add .
命令,否则可能会将不需要的文件添加到暂存区。今天卓伊凡 到服务器去更新下我们蜻蜓Q系统,把服务器的更新推送到gitee,因为上月同事更新了还没推,突然报错
这个警告信息是 Git 给出的,提示你当前使用的 git add
命令在未来 Git 2.0 版本中行为会有变化,主要涉及到对工作树中已删除文件的处理。下面为你详细介绍解决办法:
在当前版本的 Git 中,当你使用 git add
且没有指定 -A
(等同于 --all
)或者 --ignore-removal
时,默认行为是忽略工作树中已删除的文件。而在 Git 2.0 及之后版本,这种默认行为会改变。
如果你希望 Git 记录下你在工作树中删除的文件,也就是将文件的删除操作也添加到暂存区,可以使用 --all
或者 -A
选项。
git add -A
或者
git add --all
执行上述命令后,Git 会将所有修改(包括新增、修改和删除的文件)添加到暂存区。之后你就可以进行提交操作:
git commit -m "记录文件的添加、修改和删除"
如果你确实不想记录工作树中文件的删除操作,继续使用当前默认行为,可以明确指定 --ignore-removal
选项。
git add --ignore-removal .
这里的 .
表示当前目录下的所有文件和子目录。不过通常不指定该选项时默认也是这种忽略删除文件的行为。然后同样可以进行提交:
git commit -m "记录文件的添加和修改,忽略删除"
在执行上述操作前后,你可以使用 git status
命令来查看工作树和暂存区的状态,确认操作是否符合预期:
git status
通过以上操作,你可以根据自己的需求解决 git add
命令的警告问题。
我们选择记录文件的删除操作,因此
我们重新git commit, 成功,完美解决
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。