¿Cómo presiono a GitHub con un nombre de usuario diferente?

Un amigo y yo compartimos mi computadora. He hecho empujones a GitHub usando el shell git bash en Windows 7. Ahora estamos en un proyecto diferente en esa computadora y necesito que empuje a su count. Pero sigue intentando usar mi nombre de usuario y diciendo que no tengo acceso a su repository:

$ git push her_github_repository our_branch ERROR: Permission to her_username/repository.git denied to my_username. fatal: The remote end hung up unexpectedly 

si utiliza un usuario de Windows diferente, la key SSH y la configuration de git serán independientes.

Aunque, si esta no es una opción para usted, entonces su amigo debería agregar su key SSH a su count github.

Aunque, la solución anterior te mantendrá presionando como tú mismo, pero te permitirá ingresar a su repository. Si no quiere esto y trabaja en una carpeta diferente en la misma PC, puede configurar el nombre de usuario y el correo electrónico localmente dentro de una carpeta con git eliminando el indicador -g del command config:

 git config user.name her_username git config user.email her_email 

edite Oh, y no lo pensé primero, pero si presiona el protocolo https , creo que github le pedirá un nombre de usuario / contraseña en todo momento (a less que use un administrador de passwords). Entonces esta también podría ser una solución.

Configuré un alias ssh usando un IdentityFile personalizado y reescribí el origen para usar mi nombre de host me-github .

 #when prompted enter `id_rsa_user1` as filename ssh-keygen -t rsa # ~/.ssh/config Host user1-github HostName github.com Port 22 User git IdentityFile ~/.ssh/id_rsa_user1 #check original remote origin url git remote -v origin git@github.com:user1/my-repo.git #change it to use your custom `user1-github` hostname git remote rm origin git remote add origin git@user1-github:user1/my-repo.git 

Si utiliza una URL SSH ( git@github.com:username/projectname.git ) en lugar de una URL HTTPS, puede especificar temporalmente una key SSH diferente utilizando la variable de entorno $GIT_SSH_COMMAND :

 $ GIT_SSH_COMMAND="ssh -i different_private_key" git push 

Por lo que puedo decir, con las URL SSH, a GitHub no le importan los nombres de usuario, solo las keys: si una count de usuario tiene acceso a un repository, y esa count tiene una key SSH (consulte la página de keys SSH en la count configuration), luego si usa esa key SSH para enviar a ese repository, se considerará que la inserción proviene de ese usuario.

Si después de ejecutar git push Git solicita una contraseña de user , pero desea presionar como new_user , puede usar git config remote.origin.url :

 $ git push user@my.host.com:either/branch/or/path's password: ^C $ git config remote.origin.url user@my.host.com:either/branch/or/path $ git config remote.origin.url new_user@my.host.com:either/branch/or/path $ git push new_user@my.host.com:either/branch/or/path's password: 

Ir al Administrador de cnetworkingenciales Ir a Cnetworkingenciales de Windows Eliminar las inputs bajo Cnetworkingenciales genéricas Intente conectarse de nuevo.

si este es tu problema

 remote: Permission to username1/repo.git denied to username2. fatal: unable to access 'https://github.com/username1/repo.git/': The requested URL returned error: 403 

Además de cambiar el nombre de usuario y el correo electrónico desde la terminal usando git config:

 $ git config --global user.name "Bob" $ git config --global user.email "bob@example.com" 

deberás eliminar la información de autorización de Keychain. Esta solución me llevó varias horas averiguarlo. Descubrí que también tenía certificate en mi Llavero.

Abra el acceso a Llaveros, click Todos los artículos y busque git. Eliminar todo llavero

Como se mencionó anteriormente, puede usar

 git config user.name her_username git config user.email her_email 

para configurar manualmente el nombre de usuario y el correo electrónico para el repository único, pero debe agregar este command:

 git commit --amend --reset-author 

si ya has intentado empujar antes del cambio. De lo contrario, los cambios no aparecen en el file de configuration.

git config user.name solo cambia el nombre que confirmo. Todavía no puedo empujar. Así es como lo resolví, y creo que es una manera fácil para mí.

  1. Genere una key SSH debajo del nombre de usuario que desea insert en la computadora, usted usará https://help.github.com/articles/connecting-to-github-with-ssh/

  2. Agregue esta key a la count de usuario de github que desea insert en https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

  3. Elija clonar con SSH

Puede ingresar como este usuario a ese repository ahora.

Es simple durante la clonación, por favor tome la URL de git con su nombre de usuario. Mientras la comete, le pedirá la contraseña de su nuevo usuario.

P.ej:

git clone https: //username@github.com/username/reponame.git

git clone https: //username@bitbucket.org/username/reponame.git

Puedes presionar usando una count diferente. Por ejemplo, si su count es A que está almacenada en .gitconfig y desea usar la count B, que es el propietario del repository que desea enviar.

Cuenta B : B_user_name, B_password
Ejemplo de enlace SSH: https://github.com/B_user_name/project.git

El empuje con la count B es:

 $ git push https://'B_user_name':'B_password'@github.com/B_user_name/project.git 

Para ver la count en .gitconfig

  1. $git config --global --list
  2. $git config --global -e (para cambiar la count también)

Si tienes https://desktop.github.com/
luego puedes ir a Preferences -> Cuentas
y luego cerrar la session e iniciar session