我在Windows上使用Git,在公司网络中,我在HTTP代理后面,需要进行基本身份验证。出站SSH不起作用,因此我必须通过代理使用HTTPS。
我知道如何使用git config http.proxy
将设置配置为http://[username]:[password]@[proxy]:[port]
。
然而,特别是因为这是一台共享机器,我不想在我的.gitconfig
中存储密码。此外,使用git config
命令更改我的.gitconfig
会使我的密码出现在我的bash历史记录中,因此即使我记得在会话结束时清除我的.gitconfig
,我几乎肯定会忘记清除我的历史记录。
我尝试设置没有密码的http.proxy
,希望在尝试推送/拉取时会提示我输入密码,但是我只收到407代理身份验证所需的信息。我发现的所有信息似乎要么忽略了在.gitconfig
中以明文形式保存密码的问题,要么涉及NTLM代理。
我很乐意每次需要连接时键入代理详细信息-目前最好的解决方案是编写一个包装脚本,将在调用git
正常时提示我的密码并将其设置为环境变量。这是一个好的解决方案吗?在脚本中为单个调用设置环境变量是否有安全性问题?最好,有哪些内置设置或现有工具可供使用?
sslverify
。 - David Brower[user]
没有起作用。我已经将其替换为我的用户名,然后它起作用了。 - Daniels118