本手册编写时使用的是 Subversion 1.4 版本。如果您使用的是更新版本的 Subversion,我们强烈建议您访问 https://svnbook.subversion.org.cn/ 并参考适合您 Subversion 版本的手册。
svn copy — 在工作副本或版本库中复制文件或目录。
在工作副本或版本库中复制文件。 SRC 和 DST 可以是工作副本 (WC) 路径或 URL。
复制并安排项目以添加(带历史记录)。
立即将 WC 的副本提交到 URL。
将 URL 检出到 WC,并安排添加。
完成服务器端复制。这通常用于分支和标记。
您只能在一个版本库中复制文件。Subversion 不支持跨版本库复制。
--message (-m) TEXT --file (-F) FILE --revision (-r) REV --quiet (-q) --username USER --password PASS --no-auth-cache --non-interactive --force-log --editor-cmd EDITOR --encoding ENC --config-dir DIR
复制工作副本中的项目(只是安排复制 - 直到您提交,才会将任何内容放入版本库)
$ svn copy foo.txt bar.txt A bar.txt $ svn status A + bar.txt
将工作副本中的项目复制到版本库中的 URL(立即提交,因此您必须提供提交消息)
$ svn copy near.txt file:///tmp/repos/test/far-away.txt -m "Remote copy." Committed revision 8.
将版本库中的项目复制到工作副本(只是安排复制 - 直到您提交,才会将任何内容放入版本库)
这是在版本库中恢复已删除文件的推荐方法!
$ svn copy file:///tmp/repos/test/far-away near-here A near-here
最后,在两个 URL 之间复制
$ svn copy file:///tmp/repos/test/far-away file:///tmp/repos/test/over-there -m "remote copy." Committed revision 9.
这是在版本库中“标记”修订的最简单方法 - 只需 svn copy 该修订版(通常是 HEAD)到您的标签目录。
$ svn copy file:///tmp/repos/test/trunk file:///tmp/repos/test/tags/0.6.32-prerelease -m "tag tree" Committed revision 12.
如果您忘记标记,请不要担心 - 您始终可以指定一个较旧的修订版并随时标记
$ svn copy -r 11 file:///tmp/repos/test/trunk file:///tmp/repos/test/tags/0.6.32-prerelease -m "Forgot to tag at rev 11" Committed revision 13.