git 相当于重命名

git equivalent for rename

在 bash 中,我可以 find . -name jndi.properties -exec rename 's/jndi/environment/' {} \; 递归查找所有 jndi.propertie 文件并将它们重命名为 environment.properties.

但是gitstatus不识别mv,分别显示删除和添加。我怎样才能递归 git mv?

既然您要对名称进行精确匹配,那么您真的不需要进行动态替换,对吗?如果你的 find 支持它(BSD 和 GNU 支持,但 POSIX 中没有指定)你可以使用 -execdir 在目录中执行命令,这样你就可以

find . -name jndi.properties -execdir git mv {} environment.properties \;