在cvs中更改其版本后,如何检查文件的先前版本?

时间:2015-12-29 08:00:35

标签: version-control cvs

我在文件abc.html上做了{{1}}。 abc.html的版本一直到1.10。它以前的版本是v1.8。

在我将其版本更改为v1.5之后,让我说我不知道​​它是在v1.8中。如何使用cvs找出所用文件的先前版本是v1.8?

或者换句话说,如何使用cvs跟踪文件版本中之前的所有更改?

1 个答案:

答案 0 :(得分:1)

很难从你的问题的措辞中知道你的意思,但我认为就是这样......你的工作空间有点老了。 abc.html版本为1.8。然后你做了cvs update -r 1.5 abc.html,现在要撤消该操作并返回到与存储库中其余文件的签出日期相对应的版本。简短的回答是,你做不到。 CVS跟踪每个文件的更改,而不是每个目录的更改。除非您知道签出整个存储库的时间戳,或者您有一个标签已应用于您签出的整个存储库,否则您无法完成所需的工作。

您可能想要的其他可能的事情:

1.x的先前版本为1.(x-1)

有多少个版本? cvs log <filename>

当前工作区已检出哪个版本? cvs status abc.html

注意:您可能不想cvs update -r 1.5 abc.html,因为这会产生一个&#34;粘性标记&#34;在文件上,即使将存储库的其余部分更新为最新版本,它也将永远停留在1.5。要检查单个文件的旧版本,如果cvs diff -r 1.5 abc.html不够,我建议使用-p将输出发送到stdout。例如cvs update -p -r 1.5 abc.hmtl > abc.html。或者您甚至可以将其重定向到/tmp/abc.html。