Ste*_*eve 7 git git-add git-rm
如果你从命令行使用Git,有没有办法一次性删除在Changed但未更新列表中要删除的所有文件?而不是使用通配符手动删除.
在状态的“已更改但未更新”部分中显示为已删除的文件将从工作树中删除,但不会从索引中删除。要在索引中暂存删除(即从索引中删除文件),您可以执行以下操作:
git diff -z --name-only --diff-filter=D | git update-index --remove -z --stdin
Run Code Online (Sandbox Code Playgroud)
--diff-filter=D仅显示已删除文件与索引的差异,--name-only仅打印其名称并-z使用 NUL 分隔文件名,这样您就不必担心带有嵌入换行符的文件名。update-index然后从索引中删除给定的文件。
xargs如果您有支持的版本-0,那么您可以做得稍微简单一些:
git diff -z --name-only --diff-filter=D | xargs -0 git rm
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1073 次 |
| 最近记录: |