从CVS存储库获取修订

时间:2010-04-25 22:28:05

标签: repository cvs

我试图以某种方式得到对特定文件所做的所有修订日志, 但我这样做似乎很愚蠢:(

要结帐模块,请执行以下操作

CVSROOT="/home/projects/stuff/" cvs co myworkingdir

在myworkingdir中我有一个名为paper.tex的测试文件,我想尝试一下 得到修改,但我尝试了以下但没有任何作用...

CVSROOT="/home/projects/stuff/" cvs log paper.tex
cvs log: cannot open CVS/Entries for reading: No such file or directory
cvs log: nothing known about paper.tex

-bash-3.2$ CVSROOT="/home/projects/stuff/" cvs log myworkingdir/paper.tex
cvs [log aborted]: no such directory `myworkingdir'

任何人都知道如何获取paper.tex文件修订版的日志 在myworkingdir模块中?

非常感谢您的帮助! 克劳斯

1 个答案:

答案 0 :(得分:0)

错误“无法打开CVS /条目进行读取”通常意味着您在运行命令时不在沙箱内(即从CVS检出的文件夹)。
另请注意,cvs log永远不会使用CVSROOT环境变量。相反,它从当前目录的沙箱元数据中读取连接字符串,即./CVS/Root文件。这也是您在运行cvs log时需要位于有效沙箱内的原因。

如果要在不先检出文件的情况下记录文件,可以执行以下操作:

cvs -d/home/projects/stuff rlog myworkingdir/paper.tex

但是,/ home / projects / stuff真的是你的存储库的位置吗?或者它可能是您的工作副本的位置?如果它是您的存储库的位置,那么应该有一个包含各种管理文件的文件夹/ home / projects / stuff / CVSROOT(例如modules,loginfo,commitinfo,cvswrappers等)。

在任何情况下,请确保您的工作副本完全位于其他位置(即不在/ home / projects / stuff下的任何位置)。