我必须在另一台计算机上的mercurial存储库中做一些工作。该存储库有一个子目录
存储库远程路径为ssh://remote_username@server/path
,因此hg要求我输入用户remote_username
的密码。但是,子存储库在远程URL中没有用户名,在推送时,它会要求我输入本地用户名的密码。
我还没有办法强制它以remote_username
进行身份验证,或者至少提示输入用户名
我试过更改hg config auth部分和subrepo hgrc,但都没有用。我也可以更新.hgsub中的网址以包含remote_username
,但之后我也必须推送它,并且每个人都必须像我一样进行身份验证,这是不太理想的。
如何强制hg使用我想要的用户名进行远程认证?
Hg版本是4.2.1 操作系统是MacOS 协议是ssh。
答案 0 :(得分:0)
我的第一个解决方案是创建一个samba共享(此功能内置于MacOS中),从Windows计算机安装,然后使用TortoiseHg的hg客户端,提示输入用户名。然而,这需要另一台带有Windows的机器,所以这不是一个很好的答案。
最近我找到了一个更好的解决方案:创建/Users/local_username/.ssh/config
并添加以下内容:
Host server
User remote_username
其中server
是服务器的URI,remote_username
是我想要登录的用户名。
像魅力一样工作。