【发布时间】:2012-04-20 12:25:51
【问题描述】:
我已经使用 Mercurial 版本控制系统有一段时间了,有几次我看到系统警告我有关不同的重命名。
我所做的是制作一个较大文件的两个不同后代。例如,我有一个名为HttpRequest 的类,它是CGI.pm 的包装器。后来,当我决定迁移到PSGI 协议时,我制作了这个文件的两个副本,即Cgi.pm 和Psgi.pm。原始类保留下来,并成为抽象类,新类继承自它。
我一直认为这是处理这种情况的首选方法,因为每个文件都保留了它所基于的文件的历史记录。但是当我将更改推送到远程服务器时,它会告诉我:
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 2 changesets with 2 changes to 2 files (+1 heads)
remote: warning: detected divergent renames of lib/HttpRequest.pm to:
remote: lib/HttpRequest/Cgi.pm
remote: lib/HttpRequest/Psgi.pm
这很糟糕吗?我应该以其他方式吗?
【问题讨论】: