有没有办法用 git pull 在命令中输入用户名和密码,以避免出现密码消息。例如
git pull -u ahmeditman -p 123456  #this example to explain . 
使用没问题
git pull http://ahmeditmna:123456@xxxxx.git 
但它会从 Master Branch 拉取,但是如果我需要从 dev Branch 拉取?
使用没问题
Run Code Online (Sandbox Code Playgroud)git pull http://ahmeditmna:123456@xxxxx.git
我想你的意思 git clone http://ahmeditmna:123456@xxxxx.git
从技术上讲,是的。http://username:password@domain/path是 HTTP(S) 协议的有效 URL 部分。
但这是安全的还是你应该这样做?不。
首先,最好使用 HTTPS,如果您从公共存储库中推/拉它不会有问题,因为数据已经是公开的,但是如果它是私有存储库,您的数据可能会被攻击者读取。
但更重要的部分是任何有权访问您的存储库副本的人都可以读取您的凭据。试试吧(我在这个例子中使用了第一个 Python 相关存储库..):
cd /tmp/
git clone 'https://username:password@bitbucket.org/mshibly/python-examples-from-intro-to-python-course.git'
cd python-examples-from-intro-to-python-course/
git remote -v
git remote -v 列出存储库的远程 URL,让我们看看:
origin   https://username:password@bitbucket.org/mshibly/python-examples-from-intro-to-python-course.git (fetch)
origin   https://username:password@bitbucket.org/mshibly/python-examples-from-intro-to-python-course.git (push)
如您所见,您的凭据在这里,等待阅读。
如果您在服务器上使用它,那就更糟糕了,因为根据您的一般配置,您可以在日志中找到您的凭据。不说你可以通过编写脚本结束并将你的凭据放入你可以提交和/或存储在其他服务器上的脚本的事实。
这里的重点是没有充分的理由这样做,但有很多充分的理由不这样做。
不,这样做不好。 我建议您花一些时间学习 SSH 的工作原理和配置您的操作系统。
如果将远程源 URL ( git config remote.origin.url) 覆盖为http://ahmeditmna:123456@xxxxx.git,例如:
git remote set-url origin http://ahmeditmna:123456@xxxxx.git
拉取将在任何类型的分支上运行而无需提示输入密码。