所以我正在通过SVN对文件进行相当激烈的重新排列。我所说的激烈是指一次移动几十个文件夹,然后再创建几十个。我在与SVN摔跤时遇到了很多麻烦。部分原因是我一直忘记使用"svn-mv"和其他相关的svn命令。不过,其中的一部分是内置的工具(find、xargs等)给了我更多的能力来做某些事情。
长话短说,我经常遇到这样的情况:我移动了一个目录,源目标显示为"!"新目的地为"?"这是有道理的。但是,当我尝试添加标记为"?"的新目的地时它说它已经被颠覆了。我假设是.svn目录造成了问题,但如果我删除它,就会出现"不是工作副本"的错误。
所以更高层次的问题是,我是否被svn-mv、svn-delete、svn-mkdir等卡住了。。。?我已经搜索并找到了git-svn的引用,但它不是一个选项。通过svn对文件进行大规模重新排列有什么建议吗?有类似的等价物吗
查找-键入d-name somefolder-exec touch somefile\;
使用svn命令不会造成麻烦。或者更相关的,如果我正在做这样的编辑:
mkdir-p{a,b,c}/{d,e}/f
如何使用svn-mkdir来完成此操作?
谢谢。
要解决当前问题,可以从移动的文件夹中删除.svn
目录。之后,您可以再次添加它们。
但我真的建议使用svn mv
,因为否则会丢失对文件版本历史的引用。
使用svn命令不会造成麻烦。或者更相关的,如果我正在做这样的编辑:
mkdir-p{a,b,c}/{d,e}/f
你可以试试这个:
mkdir -p {a,b,c}/{d,e}/f
svn add {a,b,c}/{d,e}/f
在执行大型svn操作时,我经常使用xargs
,与使用普通命令相比,我觉得这并没有太大的限制。