git使用用户名密码clone的方式:

git clone http://username:password@remote

 例如:我的用户名是abc@qq.com,密码是abc123456,git地址为git@xxx.com/www.git

git clone http://abc@qq.com:abc123456@git.xxx.com/www.git

 执行报错:

 fatal: unable to access 'http://abc@qq.com:abc123456@git.xxx.com/www.git/':
 Couldn't resolve host 'qq.com:abc123456@git.xxx.com'

 报错原因是因为用户名包含了@符号,所以需求要把@转码一下

<?php
$userame='abc@qq.com';
echo urlencode($userame);
?>
abc%40qq.com

@符号转码后变成了%40,所以只需在clone时将username变为abc%40qq.com即可,再次执行就ok了。

为了防止密码中也可能会有@,我觉得在拼接之前,可以对用户名和密码分别进行编码操作。

 

转载于:https://www.cnblogs.com/pqchao/p/6483143.html

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐