删除目录后SVN提交失败
问题描述:
我想删除一个文件夹,然后标记新版本,但不断收到错误。删除目录后SVN提交失败
在主干我已经删除了文件夹js/libs
及其所有子文件夹svn rm trunk/js/libs
。 该文件夹下的所有文件都被标记为删除。
然后我复制到svn cp trunk tags/0.3.7
的新标签,也在tags/0.3.7/js/libs
所有文件和文件夹被标记为删除。然后当我尝试用svn ci -m "v0.3.7"
提交我得到以下错误,当提交到达第一个该文件夹的嵌套文件,在标签:
...
Deleting tags/0.3.7/js/libs
Deleting tags/0.3.7/js/libs/opentype.js/dist/opentype.js
svn: E155011: Commit failed (details follow):
svn: E155011: File '/Users/johannes/Packages/fontsampler-svn/fontsampler/tags/0.3.7/js/libs/opentype.js/dist/opentype.js' is out of date
svn: E160013: '/!svn/txr/1749751-122uf/fontsampler/tags/0.3.7/js/libs/opentype.js/dist/opentype.js' path not found
为什么会抱怨缺少的文件时,它被标记删除?过时的消息让我怀疑在回购协议中是否可能存在0.3.7标签,但没有。
为什么我不能将此删除提交到新标签?
答
好的,根据this answer,似乎有一个奇怪的行为,你可以通过在标记版本之前提交一次。
对我来说,这是解决像这样: svn revert tags/0.3.7
- 从当前删除标签提交
svn ci -m "deleted folder"
- 提交删除
svn up
- 不知何故同步是必要的
svn cp trunk tags/0.3.7
- 舞台上的标签
svn ci -m "tagging version 0.3.7"
- 提交新标签