繁体   English   中英

使用手动移动的文件修复Subversion存储库

[英]Fixing subversion repository with manually moved files

为了使用Maven,我已经重构了Java Ant项目。 该任务主要包括将文件从一个路径移动到另一路径,而在此四处添加pom.xml,但是问题出在我要提交更改时。 由于我已经手动移动了文件(不使用svn mv ),因此Subversion失去了对文件的跟踪,并且所有历史记录都被破坏了。

我知道我应该使用svn mv来保留历史记录,但是从git来的我才意识到它是没有必要的,直到为时已晚。 我的问题是:有什么办法告诉Subversion哪个存储库文件对应于每个工作副本文件? 手动执行svn命令似乎有些可能 ,但是我需要逐个文件地进行操作,坦率地说,这是很多工作。 我可以编写一个脚本,针对“破碎的”工作副本中的每个文件,按名称/ MD5搜索存储库中的每个文件,然后执行正确的svn mv ,但是我不想重新发明轮子,因为我认为这可能是一个常见的错误。

有什么建议吗?

经过一番搜索之后,我才发现Tortoise SVN可以解决这种“错误动作”,但仅适用于单个文件,还有一个名为SmartSVN的工具似乎可以对大量文件进行处理。 ,但由于它不是免费的,所以我无法尝试。

最后,我编写了一个小的bash脚本,针对“错误”工作副本中的每个文件,尝试找到其原始路径,撤消该路径并执行适当的svn mv 我已将其上载到 Github,但使用后果自负。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM