删除目录后SVN提交失败

时间:2017-10-20 08:55:00

标签: svn version-control

我想删除一个文件夹,然后标记一个新版本,但一直收到错误。

在中继中,我删除了文件夹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标签,但没有。

为什么我不能将此删除提交给新标记?

1 个答案:

答案 0 :(得分:1)

好的,根据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" - 提交新标记