我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。
我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。
我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。
我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。
当前回答
至少有一个其他原因导致消息“过期”错误。在我的例子中,问题是.svn/dir-props,这是通过运行“svn propset svn:ignore -F .gitignore .”第一次创建的。删除.svn/dir-props似乎是一个坏主意,可能会导致其他错误,所以最好使用"svn propdel"来清理错误的"svn propset"。
# Normal state, works fine.
> svn commit -m"bump"
Sending eac_cpf.xsl
Transmitting file data .
Committed revision 509.
# Set a property, but forget to commit.
> svn propset svn:ignore -F .gitignore .
property 'svn:ignore' set on '.'
# Edit a file. Should have committed before the edit.
> svn commit -m"bump"
Sending .
svn: Commit failed (details follow):
svn: File or directory '.' is out of date; try updating
svn: resource out of date; try updating
# Delete the property.
> svn propdel svn:ignore .
property 'svn:ignore' deleted from '.'.
# Now the commit works fine.
> svn commit -m"bump"
Sending eac_cpf.xsl
Transmitting file data .
Committed revision 510.
其他回答
在尝试了所有明显的东西和这里的一些其他建议之后,没有任何运气,谷歌搜索导致这个链接(链接不再工作)- Subversion说:您的文件或目录可能已经过期
简而言之,诀窍是转到.svn目录(在包含有问题文件的目录中),然后删除“all-wcprops”文件。
别的都没用的时候,对我有用。
我有时会在windows上使用TortoiseSVN。对我来说,解决方案是svn更新目录,即使没有需要下载或更新的修订。它对元数据做了一些事情,神奇地修复了它。
我相信这个问题来自于.svn文件。在原父、新父或旧父中都是不正确的。我会试着回到你的出发点。使用导出可获得文件夹的干净副本。将干净的副本移动到新位置,并使用添加和删除操作进行移动。这是手动完成SVN所做的工作,但它可能有效。
错误是因为你没有更新特定的文件,首先更新,然后才能提交文件。
“清理”会让你走上正轨。
右键单击svn文件夹,然后单击“清理”,如果你得到错误,就这样做。