Skip to main content
  1. Learn center
  2. Software Development
  3. Guides
  4. Git tutorial
  5. Comandos y herramientas de Git
  6. Resolución de problemas
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

Resolución de problemas


Error "Permission denied (publickey)" al conectarse a un repositorio remoto mediante SSH.

En primer lugar, deberá asegurarse de lo siguiente:

  • ¿Es correcta la URL?
  • ¿Está correctamente configurada la clave secreta en la máquina local?
  • ¿Está correctamente configurada la clave pública en el remoto?

Puede verificar la configuración de la clave pública/secreta correspondiente al repositorio remoto Backlog ejecutando el siguiente comando:

$ ssh <space>@<space>.git.backlog.com

Sustituya <space> por un espacio Backlog de su propiedad (por ejemplo, para el espacio demo.backlog.com, será demo@demo.git.backlog.com).

Si la configuración es correcta, verá la siguiente salida. Si aparece un mensaje de error, repite los pasos anteriores y asegúrate de que lo estás haciendo bien.

Hi yourname! You've successfully authenticated, but Backlog does not provide
  shell access.
  Connection to git.backlog.com closed.

No se puede clonar un repositorio remoto a través de su URL HTTPS

En versiones antiguas de Git, puedes encontrarte ocasionalmente con problemas al ejecutar un push o un pull. Se recomienda utilizar la última versión de Git o superior a la v2. Si está utilizando un cliente Git como Source Tree o TortoiseGit, utilice la versión Git que viene junto con el cliente correspondiente.

Se me pide mi contraseña cada vez que envío/retiro del repositorio remoto

Puede evitar introducir la contraseña varias veces configurándola de la siguiente manera.

Windows

Puede usar git-credential-winstore, que sólo le pedirá la contraseña la primera vez que haga push/pull.

Mac

Puede utilizar Sourcetree (del que hablamos en el capítulo anterior) para enlazar con Mac Keychain. Esto permitirá a Git averiguar qué credenciales usar cada vez que tires o empujes.

Console

En un Mac, puedes utilizar la API de credenciales de Git para vincular un nombre de usuario/contraseña con las operaciones de Git. Si utiliza Homebrew, la API de credenciales Git se instala automáticamente. De lo contrario, tendrá que instalarlo manualmente.

Puede comprobar si la API de credenciales está instalada con el siguiente comando.

$ git credential-osxkeychain
  Usage: git credential-osxkeychain <get|store|erase>

Si la API de credenciales no está instalada, verá el siguiente resultado.

$ git credential-osxkeychain
  git: 'credential-osxkeychain' is not a git command. See 'git --help'.

En ese caso, puede descargarlo y mover los archivos a /usr/local/bin.

$ curl -s -O http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain
$ chmod u+x git-credential-osxkeychain
$ mv git-credential-osxkeychain /usr/local/bin

Una vez completada la instalación, ejecute el siguiente comando para activar la API de credenciales.

git config --global credential.helper osxkeychain

Los cambios enviados al repositorio remoto no se reflejan allí

Es posible que se encuentre con el siguiente mensaje al ejecutar un push. Eso ocurriría normalmente cuando se está empujando desde un nuevo repositorio local.

$ git push
  No refs in common and none specified; doing nothing.
  Perhaps you should specify a branch such as 'main'.
  Everything up-to-date

Al omitir el nombre de la rama cuando se ejecuta un push, Git asumirá por defecto que está intentando enviar el cambio actual a una rama remota con el mismo nombre que la rama local. Esto ocurre si la rama principal aún no se ha creado en el repositorio remoto. (Estamos subiendo desde la rama principal local). En este caso, tendremos que utilizar explícitamente el nombre de la rama al ejecutar un push.

$ git push -u origin main

Al hacerlo, la rama principal se creará en el repositorio remoto automáticamente. La próxima vez que ejecute push, puede omitir el nombre de la rama.

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life