svn:删除存储库中的文件

svn:删除存储库中的文件,svn,version-control,Svn,Version Control,我对版本控制非常陌生,我正在使用svn,因为我正在处理的项目是在svn上托管的。 在我的本地工作副本中,我添加了一个临时文件,并在不使用svn delete的情况下将其删除(因为我不知道)。 现在该文件仍处于版本控制之下,因此当我将最后更改提交到我的私有分支时,该文件已写入存储库,提交成功,但在提交后报告了错误: svn: Error processing command 'committed' in '.' svn: Error replacing text-base of 'tmp_file

我对版本控制非常陌生,我正在使用svn,因为我正在处理的项目是在svn上托管的。
在我的本地工作副本中,我添加了一个临时文件,并在不使用svn delete的情况下将其删除(因为我不知道)。
现在该文件仍处于版本控制之下,因此当我将最后更改提交到我的私有分支时,该文件已写入存储库,提交成功,但在提交后报告了错误:

svn: Error processing command 'committed' in '.' svn: Error replacing text-base of 'tmp_file' svn: Can't change perms of file 'tmp_file': No such file or directory run svn cleanup svn:处理“”中的命令“已提交”时出错 svn:替换“tmp_文件”的文本基时出错 svn:无法更改文件“tmp_file”的perms:没有这样的文件或目录 运行svn清理 svn清理也会给出类似的结果。
我不希望tmp_文件位于存储库中的我的分支中

有人能提出一些方法吗

提前感谢

查阅svn回复

“svn帮助还原”

我在这台机器上没有svn,但可以尝试以下方法:

svn revert tmp_file
svn delete tmp_file
svn update
svn commit -m "Correctly deleted the temp file"
这基本上是您执行的文件系统级删除,执行svn删除,确保您的工作副本是最新的,然后提交更改

编辑:好的,如果运行“svn--version”,它是否会告诉您您的版本是1.4。什么

如果是这样,您的工作副本已损坏,无法修复。见

如果您的工作副本不包含需要提交的更改,除了tmp_文件外,您只需将新的工作副本签出到其他目录并删除损坏的副本。您可以通过运行“svn状态”确认没有其他更改


然后,在新的工作副本中,从“svn delete”开始,按照上面的命令正确删除文件。

这可能已在最近的svn中修复。我试图以这种方式复制事物:

$ svnadmin create test_repos
$ svn co file:///.../test_repos test_co
Checked out revision 0.
$ cd test_co
$ touch tmp_file
$ svn add tmp_file
A         tmp_file
$ rm tmp_file
$ svn ci -m ""
svn: '/.../tmp_file' is scheduled for addition, but is missing

换句话说,我的承诺根本没有成功。我使用的是1.6.2(r37639)。

感谢您的及时回复。。但是还有一个问题,工作副本被锁定并且“svn revert建议运行svn清理。。它以同样的错误退出messages@Neeraj你把这件事处理好了吗?只是想知道您是否尝试在受影响文件的父目录上运行cleanup命令。而且,我一直删除然后提交,没有问题。除非我误解了您所描述的场景,否则-svn delete应该以与给定工作区中的delete+svn commit相同的方式工作。您使用什么版本的SVN?@Critical。我相信您会发现Neeraj创建了文件,执行了svn添加,删除了文件系统,然后提交。在旧版本的subversion中,这将不可避免地破坏工作复制。作为对Neeraj的补充说明,我将更新您的subversion客户端。所有1.x客户端都与较旧的subversion服务器版本向后兼容。我使用的是1.4.6,遇到的情况与上述编辑中描述的完全相同。。尽管我签出了另一份副本,并按照那里的步骤进行操作。。那时候起作用了