dr.*_*vil 23 svn cvs svn-checkout
如何在没有初始结账的情况下列出文件CVS?
在颠覆中我可以简单地在CVS中做"svn ls http://svn.svn.com "我该怎么做?
例如,我有这个CVS连接:
pserver:anonymous@evocms.cvs.sourceforge.net:/cvsroot/evocms
Run Code Online (Sandbox Code Playgroud)
如何列出其中的所有文件?
更新:
我这样做:
c:\>set CVSROOT=pserver:anonymous@evocms.cvs.sourceforge.net:/cvsroot/evocms
c:\>cvs -list ---> doesn't work, prints out the help screen
Run Code Online (Sandbox Code Playgroud)
Oli*_*sen 33
如果是一次性操作,则无需设置CVSROOT
环境变量.只需使用-d
ad-hoc存储库规范的参数.
如果您的CVS/CVSNT版本不是太旧(确切地说您需要CVS 1.12.8或更高版本或CVSNT),那么,正如其他人所说,在登录后
cvs ls
Run Code Online (Sandbox Code Playgroud)
应该工作得很好.
如果您的CVS/CVSNT版本不支持该ls
命令,那么您可以尝试
cvs checkout -c
Run Code Online (Sandbox Code Playgroud)
这将只转储预定义模块的列表.
如果您的CVS/CVSNT版本足够老,您可能会幸运得到以下黑客攻击(除非在服务器上启用兼容模式,否则不能与更新版本的CVSNT一起使用):
首先将存储库的根目录检出到某个临时位置,这样我们就拥有了必要的元数据:
cvs -d[your CVSROOT string] co -l -dTemp .
Run Code Online (Sandbox Code Playgroud)
然后模拟该文件夹的更新(包含目录):
cd Temp
cvs -n up -d
Run Code Online (Sandbox Code Playgroud)
这将发出(几乎)与实际结账相同的输出,而不实际从服务器获取文件.
如果您使用的是Windows并且使用相当新版本的CVSNT作为客户端,那么cvs ls
当它检测到不支持ls
自身的服务器时,实际上将自动回退到此机制.
哦,是的,AFAICT没有这样的事情cvs -list
.它甚至不是有效的CVS命令行语法:-list
必须是一个全局参数而不是一个命令,因为它直接跟在命令之后,cvs
并且没有指定实际的命令.但话说回来,所有多字母的参数(例如--help
)都必须以双击开头,例如cvs --version
.大家都在考虑cvs list
哪个只是别名cvs ls
?