我有一个包含许多子文件夹的包。每个子文件夹包含不同的 svn 忽略。现在我想用新包(不包含忽略)替换所有文件夹结构。如果我直接复制粘贴,所有忽略都会丢失。我想编写一个脚本,复制然后重新设置所有忽略。我该怎么做?
我想澄清一下,如果有另一种方法可以复制文件而不删除忽略项,我愿意接受建议。
编辑:我在我的仓库中替换的包是另一个仓库的一部分,但没有不同的 svn 属性
答案1
如果您使用文件资源管理器(至少在 OpenSuse 上)通过以下命令通过命令行执行复制,则 svn:ignore 属性将被删除:
cp -r new-package/* old-package/
不会删除所有子文件夹(以及第一个文件夹下的所有文件夹)上设置的忽略。
编辑:我不确定这是 svn 正常行为还是仅发生在 OpenSuse 下,有人可以确认吗?