如果我想 checkin SVN 中已存在的同名文件,在这种情况下我将无法提交。例如:Name.doc
和 name.doc
。但是,在这种情况下我将能够导入。
这种情况甚至适用于文件夹名称。这可以防止将来进行结账操作。
有办法防止文件或文件夹重复吗?或者在 SVN 中不可能?
最佳答案
Subversion 区分大小写。这意味着多个项目具有相同的名称是完全可以的,例如名称.doc,名称.doc,NaMe.DOC,...
TortoiseSVN 在提交对话框中自动更正此类文件名,因为它可以在其中检查工作副本 BASE 并查找具有相同名称的文件。 其他 SVN 客户端不会这样做,因此阻止这种情况的不是提交,而是 TortoiseSVN。
但是,当您进行导入时,您没有可以与文件名进行比较的工作副本 - 并且存储库并不关心。所以导入会导致多个同名的项目。
如果您想防止这种情况发生,您可以在存储库上安装预提交 Hook 脚本。 Subversion提供了这样一个hook脚本:https://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/case-insensitive.py
关于svn - 为什么 svn import 选项无法检测文件重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393395/