如果是一次性操作,则不需要设置CVSROOT
环境变量。只需使用-d
临时存储库规范的参数。
如果您的 CVS/CVSNT 版本不太旧(确切地说,您需要 CVS 1.12.8 或更高版本或 CVSNT),那么正如其他人所说,在登录后
cvs ls
应该可以正常工作。
如果您的 CVS/CVSNT 版本不支持该ls
命令,那么您可以尝试
cvs checkout -c
这只会转储预定义模块的列表。
如果您的 CVS/CVSNT 版本足够老,您可能会幸运地使用以下 hack(不适用于更新版本的 CVSNT,除非在服务器上启用了兼容模式):
首先将存储库的根目录检出到某个临时位置,这样我们就有了必要的元数据:
cvs -d[your CVSROOT string] co -l -dTemp .
然后模拟该文件夹的更新(带有目录):
cd Temp
cvs -n up -d
这将发出(几乎)与实际结帐相同的输出,而无需实际从服务器获取文件。
如果您在 Windows 上并使用相当新版本的 CVSNT 作为客户端,那么cvs ls
当它检测到不支持ls
自身的服务器时,它实际上会自动回退到这种机制。
哦,是的,而且 AFAICT 没有cvs -list
. 它甚至不是有效的 CVS 命令行语法:-list
必须是全局参数而不是命令,因为它紧跟在 the 之后,cvs
并且没有指定实际命令。但是话又说回来,所有多字母参数(例如--help
)都必须以双破折号开头,例如cvs --version
. 大家有没有想过cvs list
which 只是 的别名cvs ls
?