使用Tortoise SVN在SVN仓库中移动目录

54

如何将一个子目录从一个目录移动到另一个目录,假设它们都在同一个SVN代码库中?我正在使用Tortoise SVN。


1
你可以在这里找到更详细的答案:http://tortoisesvn.net/most-forgotten-feature - sivabudh
4个回答

80

选择你想要移动的文件夹/文件,然后右键并拖拽它们到目标位置。会出现一个菜单,其中有一个选项“SVN Move versioned files here”,选择它即可。

phenry所指出的,目标文件夹必须被认为是一个SVN文件夹。该文件夹应该已经提交到仓库中了,或者你可以选择添加该文件夹以便将其添加至仓库中。

如果目标文件夹不是SVN仓库的一部分,则在右键拖拽后使用“SVN Export”命令将文件复制到任何目标文件夹中。


哇,我不知道这个。TortoiseSVN让我感到很烦恼。 - Daddy Warbox
很好。移动和重命名有什么作用? - Tim
我相信移动和重命名会弹出一个对话框,提示您输入新的名称或位置。如果要保留文件的版本历史记录,则必须使用“重命名”。移动与拖放操作相同,并选择“移动带版本的文件到此处”。 - Chris Thompson
天啊..我从来不知道我可以做到这个。非常感谢! - sivabudh
天啊,太神奇了...他们应该把它放在首页上。 - Anthony

24
请注意,只有两个目录都已被TortoiseSVN识别时,Chris Thompson的答案才有效。 如果您在资源管理器中创建一个新文件夹,并尝试从现有文件夹将文件移动到其中,您将无法获得TortoiseSVN上下文菜单项。 创建新文件夹后,您必须执行提交操作(创建新版本号)或添加操作(不创建新版本号),以便TortoiseSVN了解新文件夹,然后您才会获得在SVN中移动项目的选项。更多信息请参阅此处

我是那些错过了这部分的人之一。非常感谢! - Tomas Vinter

10

在版本库浏览器中,您可以将文件/文件夹拖放到所需的文件夹中。


0

如果您在移动之前重命名了父文件夹,那么在移动时会看到一个“十字/不允许”的标志。

解决方法是先移动子文件夹,然后再重新命名父文件夹(如果您已经重命名了父文件夹,则撤消该操作)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接