此文本尚未完工 - 可能会发生重大更改 - 且可能无法准确描述 Apache™ Subversion® 软件的任何已发布版本。将此页面加入书签或以其他方式将其推荐给他人可能不是一个明智的做法。请访问 https://svnbooks.subversion.org.cn/ 以获取此书的稳定版本。

名称

svn move (mv) — 移动文件或目录。

语法

svn move SRC... DST

描述

此命令会移动工作副本或仓库中的文件或目录。

[Tip] 提示

此命令等效于 svn copy 后跟 svn delete.

移动多个源时,它们将作为 DST 的子项添加,DST 必须是一个目录。

[Note] 注意

Subversion 不支持在工作副本和 URL 之间移动。此外,您只能在单个仓库中移动文件 - Subversion 不支持跨仓库移动。Subversion 支持在单个仓库中进行以下类型的移动

WC → WC

移动并安排将文件或目录添加(带历史记录)。

URL → URL

完整的服务器端重命名。

移动大型树时,您应该知道 URL → URL 移动比 WC → WC 移动更轻量级。在工作副本内移动节点不仅仅是更改目录列表(它将复制文件、管理临时文件并扩展关键字),并且可能明显更慢。

还要记住,在混合版本工作副本中进行 WC → WC 移动可能会产生意外结果(参见 名为“混合版本工作副本”的部分)。

选项

示例

移动工作副本中的文件

$ svn move foo.c bar.c
A         bar.c
D         foo.c

将工作副本中的多个文件移动到子目录中

$ svn move baz.c bat.c qux.c src
A         src/baz.c
D         baz.c
A         src/bat.c
D         bat.c
A         src/qux.c
D         qux.c

移动仓库中的文件(这是一个立即提交,因此需要提交消息)

$ svn move -m "Move a file" http://svn.red-bean.com/repos/foo.c \
                            http://svn.red-bean.com/repos/bar.c

Committed revision 27.
TortoiseSVN 官方中文版 1.14.7 发布