Clon de Git usando http con usuario y contraseña

Intento usar git clone http: // usuario: password@host.com pero tengo algunos problemas para agregar usuario o contraseña porque el usuario está usando un correo electrónico que contiene otro @ y la contraseña está usando una marca de esclamation (!)

el command se ve como http: //user@home.com:! password@host.com/git

Esto no funciona: intenté 0x21contraseña en lugar de contraseña, pero el sistema no lo hace excepto esto.

¿Alguna idea?

has probado http: //user%40home.com:! password@host.com/git

Esta es una pregunta bastante antigua, pero permítanme agregar la solución para los beneficios de los demás. Recientemente comenzamos a usar la identificación de correo electrónico como nombre de usuario para conectar con Git, pero los commands pull / fetch / push etc. comenzaron a fallar. Intentamos% 40 como se sugirió en comentarios anteriores, pero no funcionó. Así que creamos el file ~ / .netrc con la siguiente información.

machine git.myserver.com login username@myserver.com contraseña mypassword

También eliminamos el nombre de usuario de la URL que se almacena en el file .git / config. Y ahora podríamos hacer pull / commit, etc. No es aconsejable utilizar este enfoque porque la contraseña se almacena en text plano en un file, pero eso fue una solución rápida para realizar una confirmación urgente mientras se buscaba la forma de conectar usando la id de correo electrónico desde la herramienta de command-line. .