使用git如何批量对文件进行rm操作
大家讲道理
大家讲道理 2017-04-21 10:57:25
[Git讨论组]

用了一段时间git了,一直有个问题没解决。当做了一些修改时,一般会直接 "git add ." 先将文件staged起来。

但是"git add ."对被删除的内容是无效的,还需要"git rm filename"删除文件,但是git rm命令貌似没有类似"git rm ."的用法(这样可以执行,但意思是删除所有文件),于是,当有比较大量的文件被删除时,一个个的git rm非常麻烦。。我现在基本上都是到gui的git(比如mac的Tower)中全选,批量Stage搞定,但是,命令行下面如何做比较方便呢,难道要自己写个脚本?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(5)
PHP中文网
git add -A

它会把我们未通过 git rm 删除的文件全部stage

阿神

还有个git commit -a可以用, 大致是删除的文件会自动标记, 但对新建文件就不行

-a, --all ____ Tell the command to automatically stage files that have been modified and deleted, but new files you have not told git about are not affected.
伊谢尔伦

git 可以用glob 模式通配符。Git 也有它自己的文件模式扩展匹配方式 比如 git rm *.c 删除当前目录及递归所有子目录下.c结尾的文件。 git rm *.c 则只删除当前目录的.c 文件。

高洛峰

我之前也遇到楼主的问题,困惑很久,每次都要手动去清cach的文件。
今天百度到楼主这里,也没有找到答案,然后刚好遇到需求,就想了一下,有一个办法。
1、先把缓存中的文件清空。
git rm -r --cached 某个目录
2、再把所有文件重新加入缓存
git add .

ringa_lee

git rm * -f删除当前git项目下的所有文件(包括所有目录)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号