Skip to main content

Esta versión de GitHub Enterprise Server se discontinuó el 2024-09-25. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener rendimiento mejorado, seguridad mejorada y nuevas características, actualice a la versión más reciente de GitHub Enterprise Server. Para obtener ayuda con la actualización, póngase en contacto con el soporte técnico de GitHub Enterprise.

Transferir un repositorio

Puedes transferir repositorios a otros usuarios o cuentas de organización.

Acerca de las transferencias de repositorios

Cuando transfiere un repositorio a un propietario nuevo, este puede administrar de inmediato los contenidos, incidencias, solicitudes de incorporación de cambios, lanzamientos, projects (classic) y opciones. Al transferir un repositorio, también puedes cambiarle el nombre. Consulte "Renombrar un repositorio."

Los prerrequisitos para las transferencias de repositorio son:

  • Cuando transfieres un repositorio que te pertenece a otra cuenta personal, el dueño nuevo recibirá un correo electrónico de confirmación.
  • Para transferir un repositorio, debe tener acceso de administrador al repositorio.
  • Los repositorios solo se pueden transferir a un propietario dentro de la misma instancia de GitHub Enterprise Server. Para obtener más información sobre mover un repositorio de GitHub Enterprise Server a GitHub Enterprise Cloud, consulte "Migración de repositorios desde GitHub Enterprise Server a GitHub Enterprise Cloud".
  • Para transferirle un repositorio que te pertenece a una organización, debes tener permiso para crear un repositorio en la organización de destino.
  • La cuenta objetivo no debe tener un repositorio con el mismo nombre o una bifurcación en la misma red.
  • El propietario original del repositorio se agrega como colaborador en el repositorio transferido. El resto de los colaboradores del repositorio transferido permanecerá intacto.
  • No se pueden transferir repositorios únicos bifurcados desde una red de nivel superior privada.

¿Qué se transfiere con un repositorio?

Cuando transfieres un repositorio, también se transfieren sus propuestas, solicitudes de extracción, wiki, estrellas y observadores. Si el repositorio transferido contiene webhooks, servicios, secretos, o llaves de implementación, estos permanecerán asociados después de que se complete la transferencia. Se conserva la información de Git acerca de las confirmaciones, incluidas las contribuciones. Además:

  • Si el repositorio transferido es una bifurcación, sigue asociado con el repositorio ascendente.

  • Si el repositorio transferido tiene alguna bifurcación, esas bifurcaciones seguirán asociadas al repositorio después de que se complete la transferencia.

  • Si el repositorio transferido utiliza Almacenamiento de archivos de gran tamaño de Git, todos Git LFS los objetos se mueven automáticamente. Esta transferencia ocurre en segundo plano, así que, si tienes una cantidad grande de objetos de Git LFS o si los mismos objetos de Git LFS son grandes, podría tomar algo de tiempo para que ocurra la transferencia.

  • Cuando se transfiere un repositorio entre dos cuentas personales, las asignaciones de incidencias se dejan intactas. Cuando transfieres un repositorio desde una cuenta personal a una organización, las incidencias asignadas a los miembros de la organización permanecen intactas y todos los demás asignatarios de incidencias se eliminan. Solo los propietarios de la organización están autorizados a crear asignaciones de propuestas nuevas. Cuando transfieres un repositorio desde una organización a una cuenta personal, solo se mantienen las incidencias asignadas al propietario del repositorio y se eliminan todos los demás asignatarios de incidencias.

  • Si el repositorio transferido contiene un sitio GitHub Pages, se redirigen los enlaces al repositorio de Git en la web y a través de la actividad de Git. Sin embargo, no redirigimos GitHub Pages asociadas al repositorio.

  • Todos los enlaces a la ubicación anterior del repositorio se redirigen de manera automática hacia la ubicación nueva. Al usar git clone, git fetch o git push en un repositorio transferido, estos comandos le redirigirán a la nueva ubicación o dirección URL del repositorio. Sin embargo, para evitar confusiones, es altamente recomendable actualizar cualquier clon local existente para que apunte a la nueva URL del repositorio. Puede hacerlo con git remote en la línea de comandos:

    git remote set-url origin NEW_URL
    

    Advertencia: si creas un repositorio o rama en la ubicación anterior del repositorio, se desactivarán las redirecciones al repositorio transferido. Se pueden reactivar si se cambia el nombre o se elimina el nuevo repositorio o rama.

  • Cuando transfieres un repositorio desde una organización a una cuenta personal, los colaboradores de solo lectura de este no se transferirán. Esto es porque los colaboradores no pueden tener acceso de solo lectura a los repositorios que pertenecen a una cuenta personal. Para más información sobre los niveles de permisos de repositorio, consulta "Niveles de permisos para un repositorio de una cuenta personal" y "Roles de repositorio para una organización".

  • Los paquetes asociados al repositorio se pueden transferir o pueden perder su vínculo al repositorio, en función del registro al que pertenezcan. Consulte "Acerca de los permisos para los Paquetes de GitHub".

Consulte "Administrar repositorios remotos".

Transferencias de repositorios y organizaciones

Para transferir repositorios a una organización, debes tener permisos de creación de repositorios en la organización receptora. Si los propietarios de la organización inhabilitaron la creación de repositorios para los miembros de la organización, solo los propietarios de la organización pueden transferir repositorios hacia fuera o dentro de la organización.

Una vez que se transfiere un repositorio a una organización, los parámetros de permiso del repositorio de la organización predeterminados y los privilegios de membresía predeterminados se aplicarán al repositorio transferido.

Transferir un repositorio que le pertenece a tu cuenta personal

Puedes transferir tu repositorio a cualquier cuenta personal que acepte la transferencia de tu repositorio. Cuando se transfiere un repositorio entre dos cuentas personales, el propietario del repositorio original y los colaboradores se agregan automáticamente como colaboradores al repositorio nuevo.

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Configuración. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  3. En la parte inferior de la página, en la sección "Zona de peligro", haz clic en Transferir.

  4. Lea la información sobre cómo transferir un repositorio y, a continuación, en "Nuevo propietario", elija cómo especificar el nuevo propietario.

    • Para elegir una de las organizaciones, seleccione Seleccionar una de mis organizaciones.

      • Seleccione el menú desplegable y haga clic en una organización.

      • Opcionalmente, en el campo "Nombre del repositorio", escriba un nuevo nombre para el repositorio.

        Nota: Tiene que ser propietario de la organización de destino para poder cambiar el nombre del repositorio.

    • Para especificar una organización o un nombre de usuario, seleccione Especificar una organización o nombre de usuario y, después, escriba el nombre de usuario de la organización o del nuevo propietario.

  5. Lee las advertencias acerca de la posible pérdida de características en función de la suscripción de GitHub del propietario nuevo.

  6. Después de Escribir REPOSITORY NAME para confirmar, escriba el nombre del repositorio que quiere transferir y haga clic en Lo entiendo, quiero transferir este repositorio.

Transferir un repositorio que le pertenece a tu organización

Si tienes permisos de propietario en una organización o permisos de administrador para uno de sus repositorios, puedes transferir un repositorio que le pertenece a tu organización a tu cuenta personal o a otra organización. Los repositorios internos no se pueden transferir a una cuenta personal, solo a otra organización. Para transferir un repositorio interno, cambia la visibilidad del repositorio a "privado" o "público". Consulte Configurar la visibilidad de un repositorio

  1. Inicia sesión en tu cuenta personal que tiene permisos de administrador o propietario en la organización a la que le pertenece el repositorio.

  2. En GitHub, navegue hasta la página principal del repositorio.

  3. En el nombre del repositorio, haz clic en Configuración. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  4. En la parte inferior de la página, en la sección "Zona de peligro", haz clic en Transferir.

  5. Lea la información sobre cómo transferir un repositorio y, a continuación, en "Nuevo propietario", elija cómo especificar el nuevo propietario.

    • Para elegir una de las organizaciones, seleccione Seleccionar una de mis organizaciones.

      • Seleccione el menú desplegable y haga clic en una organización.

      • Opcionalmente, en el campo "Nombre del repositorio", escriba un nuevo nombre para el repositorio.

        Nota: Tiene que ser propietario de la organización de destino para poder cambiar el nombre del repositorio.

    • Para especificar una organización o un nombre de usuario, seleccione Especificar una organización o nombre de usuario y, después, escriba el nombre de usuario de la organización o del nuevo propietario.

  6. Lee las advertencias acerca de la posible pérdida de características en función de la suscripción de GitHub del propietario nuevo.

  7. Después de Escribir REPOSITORY NAME para confirmar, escriba el nombre del repositorio que quiere transferir y haga clic en Lo entiendo, quiero transferir este repositorio.