【发布时间】:2012-06-01 23:12:14
【问题描述】:
当我右键单击我的 Hg 文件夹并选择 TortoiseHg > Web 服务器 时,我可以毫无问题地在端口 7999 上启动 Web 服务器。然后我关闭了那个对话框。如果我从命令提示符运行netstat -a -o,我可以看到thgw.exe 的实例正在运行并在端口7999 上侦听(即使在关闭对话框之后)。具有讽刺意味的是,在任务管理器中thgw.exe 进程被称为“用于 Mercurial SCM 的 TortoiseHg GUI 工具”,即使没有运行 GUI。
问题
如果我通过 TortoiseHg > WebServer 再次打开该对话框,它会报告状态为“已停止”,并且 开始 按钮已启用。这是不正确的,因为端口仍在侦听。如果我单击开始按钮,我会按预期在日志中收到此消息:
abort: cannot start server at ':7999': 每个套接字地址(协议/网络地址/端口)通常只允许使用一次
问题
那么为什么 TortoiseHg 没有意识到现有的
thgw.exe正在端口上运行?除了 netstat 和任务管理器之外,有没有更好的方法来检查 TortoiseHg 是否正在侦听 Web 端口?还要了解哪个端口代表哪个文件夹?
我无法停止 Web 服务器,那么您应该如何在不从任务管理器中杀死 TortoiseHg Web 服务器的情况下正常关闭它?这对我的生产源代码控制系统来说似乎是一件可怕的事情!
【问题讨论】:
标签: webserver tortoisehg