SVN从命令行"修复移动"

Joe*_*ner 15 svn

我的IDE不知道我使用Subversion,每当我重命名一个类(Java)时,它都会重命名该文件而不通知版本控制系统.我当然希望保留文件的历史记录.据我所知,在TortoiseSVN中有一个名为"修复移动"的选项来修复移动,但这不是一个选项,因为我在Ubuntu上.有没有办法从命令行修复移动?

And*_*rew 15

如果您还记得文件的旧名称/位置:

mv new-filename old-filename
svn mv old-filename new-filename
Run Code Online (Sandbox Code Playgroud)

当然,您需要安装Subversion命令行客户端,您可能已经安装了该命令行客户端.如果没有,sudo aptitude install subversion subversion-client应该做的伎俩.

根据你的评论,不,我不知道有一种比这更简单的方法.如果你不确定你的旧文件名是什么,svn stat可能会给你一个提示.


ndy*_*yer 5

将其添加到.bashrc中

svn-repair() { mv -n -- "$2" "$1" && svn mv -- "$1" "$2"; }
Run Code Online (Sandbox Code Playgroud)

然后你可以输入

svn-repair old-filename new-filename
Run Code Online (Sandbox Code Playgroud)