'cvs logout'怎么能不起作用?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (12)

我在Windows XP系统上,我从命令行执行此命令:

cvs -d :pserver:CharlesAnderson@ServerName/RepositoryName login -p <pw>

生成此响应:

Logging in to :pserver:CharlesAnderson@servername:2401:/RepositoryName

如果我然后输入:

cvs logout

我收到这条消息:

cvs logout: bad CVSROOT - Cannot specify port: ":pserver:CharlesAnderson@ServerName:2401/RepositoryName"

重新启动我的电脑没有帮助。我是如何进入这种状态的,如何摆脱它?

提问于
用户回答回答于

由于您没有-dlogout命令指定CVSROOT(即选项),因此CVS只能从环境块或已检出的工作副本(即./CVS/Root文件)的元数据中获取此信息。你是否可以通过环境变量指定CVSROOT并忘记第二个冒号(即端口号后面的冒号)?此外,显式指定端口2401不是必需的,因为它已经是默认端口:pserver:(在您的示例中,您在运行login命令时实际上没有指定端口)。

在任何情况下,logout只有在指定的CVSROOT与用于登录的CVSROOT匹配时才有效。

最后,您应该知道login并且logout不要划定“会话”。CVS使用无会话协议。该login命令实际执行的操作是在本地缓存您的密码,因此您不必为每个命令重新输入密码(CVS每次都会隐式地从缓存中读取它)。Logout再次从缓存中删除密码,以便下次运行命令时,您必须再次输入密码。

扫码关注云+社区

领取腾讯云代金券