Prefiero usar HTTPS, me parece más fácil y más seguro que configurar las teclas ssh.
Usando HTTPS, puede evitar que git solicite a su nombre de usuario controles remotos de github con lo siguiente:
git config --global url."https://yourusername@github.com".insteadOf "https://github.com"
Y al menos puede reducir la frecuencia que git solicita su contraseña con:
git config --global credential.helper 'cache --timeout=28800'
Donde 28800 son 8 horas. Utilizo esta configuración para ingresar mi contraseña solo una vez, cuando comienzo mi jornada laboral.
Después de eso, tendrá estas entradas dentro de su ~/.gitconfig
[url "https://yourusername@github.com"]
insteadOf = https://github.com
[credential]
helper = cache --timeout=28800
Fuente:
http://git-scm.com/docs/git-credential-cache
http://git-scm.com/docs/git-config