22

The minimal reproducible failure is as follows:

> mkdir test && cd test
> svn co https://svn.server.com/repo .
> vim php/main.php
> svn commit
Sending        php/main.php
Transmitting file data ..svn: Commit failed (details follow):
svn: File not found: Transaction »52-1r«, Path »/php/main.php«
svn: Your commit message was left in a temporary file:

What puzzles me is that this is a clean checkout, nobody has touched the repo (an svn update before the commit makes no difference) and the file does exist (I can ls it or vim it).

The only notable thing here is that the folder name which contains main.php has changed between r1 and r52.

Where does that issue come from, why can that file not be found when it's obviously there? And how can I fix this?

4

4 回答 4

41

在使用客户端创建标签时,您也会收到此消息,方法是复制到存储库中不存在多于一级所需文件夹结构的新路径。(天哪,这听起来很复杂。)

换句话说,我试图创建一个标签:

/projects/MyAwesomeProject/tags/myFirstTag

...但“标签”文件夹还不存在。我希望客户为我完成工作;手动创建“标签”文件夹是解决方法。

于 2014-03-17T09:53:50.860 回答
7

简答

我的 subversion 客户端版本已过时。

长答案

我在我的 Mac 上运行MacPorts,并以某种方式假设我安装了Subversion作为其中的一部分。唉,我没有,我的svn命令是 Apple 的默认命令svn, version 1.6.17 (r1128011),它以 subversion 格式 10 运行。

svn, version 1.7.13 (r1516569)以颠覆格式 12 运行的存储库运行。

在更新(即安装)我的本地svn, version 1.8.3 (r1516576)(也以格式 12 运行)和svn upgrade我的本地存储库树到当前版本之后,我可以毫无问题地提交我的所有更改。

于 2013-09-16T19:20:00.793 回答
4

选择 SVN 客户端底部的复选框后,我解决了这个问题。“创建中间文件夹”

于 2020-02-27T09:46:37.080 回答
2

svn cleanup为我做了伎俩

于 2017-08-29T09:34:32.987 回答