有没有办法找出 sourceforge 上托管的代码是 svn 还是 cvs 并编写下载过程脚本?

有没有办法找出 sourceforge 上托管的代码是 svn 还是 cvs 并编写下载过程脚本?

例如,如果我有某个项目的页面,我可以使用 svn 或 cvs 吗(以及如何找出哪个?)例如,http://sourceforge.net/projects/ecb/

答案1

展望来源该项目的页面,它提供了 CVS 命令

cvs -d:pserver:[email protected]:/cvsroot/ecb login

其他使用 CVS 的项目也应遵循相同的命名约定。SVN 看起来类似:

svn co https://<project>.svn.sourceforge.net/svnroot/<project>

答案2

我觉得你想通过“屏幕抓取”来找出项目使用的版本控制。项目页面有指向主“代码”页面的链接,你可以grep通过查找单词来找到它scm。例如:命令(在 unix 中):

curl -s http://sourceforge.net/projects/<project-short-name>/ | \
grep 'scm/?type' | sed 's/\(.*type=\)\([a-z]\+\)\(&amp.*\)$/\2/g' 

应该会从 html 链接中获取单词svncvs或两者(甚至其他单词?)。这只是为了说明如何以编程方式找出项目使用的 SCM。您可能需要编写更多或更少的代码,具体取决于您想要在哪里“编写脚本”,例如,它是在 unix 还是 windows 上?它是用于 eclipse 插件吗?还有更多问题浮现在脑海中。

免责声明:许多网站认为屏幕抓取违反了服务条款。请在抓取网页之前检查 sf.net 政策,看看是否可以抓取网页。

相关内容