我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。
我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。
我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。
我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。
当前回答
我刚刚得到这个错误。我建议你先在服务器上检查一下原始文件是否在那里。有时更改不是在本地文件夹中进行的。 如果这是你的情况,只需删除文件夹并再次签出。
其他回答
我在删除一些目录后随机收到这个错误,每个目录包含一些文件。我通过Netbeans删除了这些目录,并意识到它实际上并没有删除它们。它似乎只是删除了目录中的所有内容,并在Netbeans中删除了对该目录的引用。但是它们仍然存在于文件系统中。确保它们从文件系统中删除,然后再次尝试提交。
就像@Alexander-Klyubin建议的那样,在存储库中进行移动。它也会快得多,特别是如果你有大量的数据要移动,因为你不需要再次通过网络传输所有的数据。
svn mv https://username@server/svn/old/ https://username@server/svn/new/
应该可以正常工作
将服务器和客户端升级到Subversion 1.9。
如果过期错误在正常情况下不会发生的情况下随机发生,则在运行提交时,可能表明您正在使用过时且不受支持的Subversion 1.7或更老的客户端或服务器。
为了解决这个问题,您应该升级服务器和客户端。请参阅相关的Subversion 1.9发行说明条目:通过HTTPv1提交时出现“过期”错误。
为了解决这个问题,我需要恢复有问题的文件,并更新我的工作副本,后来我再次修改了文件,在这些步骤之后,错误不再发生。
至少有一个其他原因导致消息“过期”错误。在我的例子中,问题是.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.