我是第一次使用SVN,所以这可能是一个基本问题。
应用即时使用svn,问题是应用程序的一个任务是自动添加/删除文件夹/文件;当我提交时,我想用当前文件夹树更新存储库。
我看到了如何使用svn add -f myapp/*
添加所有已创建的文件/文件夹,但如果删除已存储在存储库中的文件夹,则会出现错误:svn: Directory '/myapp/folder' is missing
。
如何告诉SVN在提交期间从repo中删除丢失的文件夹/文件?
我知道svn有remove
命令,但每次删除时都会使用headcache。
更新:感谢jon的链接,我发现这个命令:svn rm $( svn status [LOCAL_COPY_PATH] | sed -e '/^!/!d' -e 's/^!//' ) [LOCAL_COPY_PATH]
满足了我的需求。
答案 0 :(得分:1)
您应该始终使用svn delete
而不是仅仅从回购中删除文件夹/文件。话虽如此,看起来有人写了一个脚本来做到这一点:
答案 1 :(得分:0)
你需要构建你的提交,没有办法解决它。 SVN以不同的方式处理已删除文件和已删除文件夹。如果删除目录中的文件,该文件夹将被标记为已修改。如果您之后删除该文件夹,您将遇到上述问题。现在可能会发生这种情况,特别是如果你暂时不提交。
我的建议是首先使用svn update恢复文件夹,使用“svn rm”正确删除,然后提交。