在合并期间,有时在未合并的路径中,会有多个文件显示"由我们删除"。如果我想删除它们,则每个人都需要git rm
应用。
如何使用一个命令而不是在每个文件上使用git rm
?
答案 0 :(得分:4)
只需使用其他Linux工具! git status --porcelain
适合轻松操作,“DU”相当于“我们删除”。
git status --porcelain | grep "DU" | cut -c4- | xargs git rm
--porcelain[=<version>]
以易于解析的格式为脚本提供输出。这类似于短输出,但在Git版本中保持稳定,无论用户配置如何。
答案 1 :(得分:0)
我无法获得j4nw的答案为我工作(在Windows中使用git bash
),因此这是我使用SED对其进行修改的方式:我特别想隔离设计的“用户删除”行由DU在git status --porcelain
输出中。
git status --porcelain | sed -n -e '/^DU <dev_directory>/p' | sed 's/DU <dev_directory>/./' | xargs git rm
<dev_directory>
是我所有有问题的文件所在的根文件夹。例如,这是git status --porcelain
中输出的行之一:
DU dev/src/A/filename