当前位置:  开发笔记 > 运维 > 正文

在CVS中移动文件而不重置修订号

如何解决《在CVS中移动文件而不重置修订号》经验,为你挑选了2个好方法。

最近我在源代码树中移动源文件.例如,将一堆文件放入公共程序集中.我一直在这样做,我从CVS删除文件,然后在新的位置再次添加它.问题是文件的修订号重置为1.1.是否有一些简单的方法来移动东西而不重置数字.

我可能应该提到我无法访问存储库,因此任何需要它的东西都无法帮助我,但它可能对其他人有帮助.



1> Diomidis Spi..:

实现此效果的普遍接受的方式是执行以下步骤.对此的技术术语是复制.

    在托管CVS存储库的服务器上登录,并将存储库文件从您想要的位置复制(不要移动)到新位置.

    在客户端cvs从旧位置删除该文件.

    在客户端,cvs更新新位置中的目录内容(以便文件出现在那里).

    在客户端执行复制文件的强制cvs提交(使用-f标志)以记录它被重新复制的事实(向该效果添加日志注释).

此过程将文件历史记录保留在其新位置,并且不会破坏存储库的向后连续性.如果您及时移回,该文件将正确显示在其旧位置.您也可以使用相同的过程重命名文件.



2> Daniel Schne..:

没有办法使用仅客户端命令移动文件.您需要访问服务器文件系统,并可以将存储库中的",v"文件移动到新位置.这将保留所有历史记录,因为CVS会在每个文件中记录每个修订版本及其注释.

请记住,文件在删除时会移动到"Attic"子文件夹(无法从客户端看到).这是删除文件后如何恢复的方法.

通常这种方法没有直接问题,但是如果您决定检查可能依赖于以前目录结构的产品的早期版本,则必须考虑后果!

这是Subversion等其他版本控制系统具有明确优势的地方.

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有