有没有办法为git pull提供用户名和密码作为命令行参数?在svn中有类似的东西:
svn up --no-auth-cache --username $SVN_USER --password $SVN_PASSWORD
在git中有没有相当于这个?我无法在文件系统上存储凭据。
基本上,我有一个运行构建的脚本用于多个相关项目。由于脚本位于共享服务器上并且由不同的用户运行,因此我无法在服务器上存储凭据。我不想提示用户,因为脚本使用单个用户名/密码从多个SVN / GIT存储库中获取数据,因此我想通过脚本读取凭据一次,然后将它们传递给git pull或svn up命令
答案 0 :(得分:0)
如果您使用的是HTTPS,则解决方案可能位于this answer:
not 安全方式是在您提取的网址https://user:password@server.com/path/to/repo
中包含凭据。显然,您的凭据最终是.git文件夹和/或日志文件中的纯文本。
安全的方法是配置"凭证助手"在git。然后,一旦他们被使用,它将记住凭证。它会将凭据安全地存储在计算机上,但如果您使用系统范围的配置,它们将适用于所有用户。例如,在Windows上使用msysgit我会使用wincred帮助程序:git config --system credential.helper wincred
。我的理解是--system
为所有存储库和系统上的所有用户打开了凭证帮助程序,因此您必须确定这对您的服务器是否正常。免责声明:我之前只使用过--global。
我还没有找到适合你情况的更好选择,但是一些真正的git guru可能会插话。