Bifurcar un repositorio

Una ramificación es una copia de un repositorio. Bifurcar un repositorio te permite experimentar libremente con cambios sin afectar el proyecto original.

Los miembros de una empresa con usuarios administrados no pueden bifurcar repositorios desde fuera de la empresa ni bifurcar repositorios internos.

Acerca de las bifurcaciones

Casi siempre las bifurcaciones se usan para proponer cambios al proyecto de otra persona o para usar el proyecto de otra persona como inicio de tu propia idea. Puedes bifurcar un repositorio para crear una copia del mismo y hacer cambios sin afectar al repositorio ascendente. Para obtener más información, consulta la sección "Trabajar con las bifurcaciones".

Proponer cambios para el proyecto de otra persona

Por ejemplo, puedes utilizar ramificaciones para proponer cambios relacionados con arreglar un error. En lugar de registrar una propuesta para un error que has encontrado, puedes hacer lo siguiente:

  • Bifurcar el repositorio.
  • Solucionar el problema.
  • Emitir solicitudes de cambios al propietario del proyecto.

Usar el proyecto de otra persona como inicio de tu propia idea

El software de código abierto se basa en la idea de que, si compartimos el código, podemos crear software más confiable y mejor. Para obtener más información, consulta la sección "Acerca de la Iniciativa de Código Abierto" en la Iniciativa de Código Abierto.

Para obtener más información acerca de aplicar los principios de código abierto al trabajo de desarrollo de tu organización en GitHub, consulta la documentación técnica de GitHub "Introducción al innersource".

Cuando creas tu repositorio público desde una ramificación del proyecto de alguien más, asegúrate de incluir el archivo de licencia que determine cómo quieres que se comparta tu proyecto con los demás. Para obtener más información, consulta la sección "Elegir una licencia de código abierto" en choosealicense.com.

Para obtener más información acerca del código abierto, específicamente sobre cómo crear y hacer crecer un proyecto de código abierto, hemos creado las Guías de Código Abierto que te ayudarán fomentar una comunidad saludable mediante la recomendación de mejores prácticas para crear y mantener repositorios para tus proyectos de código abierto.También puedes tomar un curso gratuito de Laboratorio de aprendizaje de GitHub sobre cómo mantener comunidades de código abierto.

Prerrequisitos

Si todavía no lo has hecho, primero debes configurar Git. No olvides configurar la autenticación a GitHub desde Git.

Bifurcar un repositorio

Puedes ramificar un proyecto para proponer cambios en los repositorios precedentes u originales. En este caso, es una buena práctica sincronizar tu bifurcación periódicamente con el repositorio ascendente. Para hacerlo, deberás usar Git en la línea de comando. Puedes practicar cómo configurar el repositorio precedente utilizando el mismo repositorio octocat/Spoon-Knife que acabas de ramificar.

  1. En GitHub, dirígete al repositorio octocat/Spoon-Knife.
  2. En el ángulo superior derecho de la página, haz clic en Bifurcar. Botón Bifurcar

Para aprender más sobre el CLI de GitHub, consulta la sección "Acerca del CLI de GitHub".

Para crear una bifurcación de un repositorio, utiliza el subcomando gh repo fork.

gh repo fork repository

Para crear la bifurcación en una organización, utiliza el marcador --org.

gh repo fork repository --org "octo-org"

Clonar tu repositorio bifurcado

Ahora mismo, tienes una bifurcación del repositorio Spoon-Knife, pero no tienes los archivos de ese repositorio localmente en tu computadora.

  1. En GitHub, dirígete a tu bifurcación del repositorio Spoon-Knife.

  2. Sobre la lista de archivos, da clic en Código. Botón de "Código"

  3. Para clonar el repositorio utilizando HTTPS, debajo de "Clonar con HTTPS", da clic en . Para clonar el repositorio utilizando una llave SSH, incluyendo un certificado que emita la autoridad de certificados SSH de tu organización, haz clic en Usar SSH y luego en . Para clonar un repositorio utilizando el CLI de GitHub, haz clic en Utilizar el CLI de GitHub y luego en . El icono de portapapeles para copiar la URL para clonar un repositorio

    El icono del portapapeles para copiar la URL para clonar un repositorio con el CLI de GitHub

  4. Abre la TerminalTerminalGit Bash.

  5. Cambia el directorio de trabajo actual a la ubicación en donde quieres clonar el directorio.

  6. Escribe git clone, y luego pega la URL que copiaste antes. Se verá así, con tu nombre de usuario de GitHub en lugar de YOUR-USERNAME:

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
  7. Presiona Enter (Intro). Se creará tu clon local.

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
    > Cloning into `Spoon-Knife`...
    > remote: Counting objects: 10, done.
    > remote: Compressing objects: 100% (8/8), done.
    > remove: Total 10 (delta 1), reused 10 (delta 1)
    > Unpacking objects: 100% (10/10), done.

Para aprender más sobre el CLI de GitHub, consulta la sección "Acerca del CLI de GitHub".

Para crear un clon de tu bifurcación, utiliza el marcador --clone.

gh repo fork repository --clone=true
  1. En el menú File (Archivo) haz clic en Clone Repository (Clonar repositorio).

    Clonar opción de menú en la aplicación Mac

    Opción Clone menu (Clonar menú) en la app de Windows

  2. Haz clic en la pestaña que corresponde a la ubicación del repositorio que deseas clonar. También puedes hacer clic en URL para introducir manualmente la ubicación del repositorio.

    Pestañas de ubicación en el menú Clone a repository (Clonar un repositorio)

    Pestañas de ubicación en el menú Clone a repository (Clonar un repositorio)

  3. Elige dentro de la lista el repositorio que deseas clonar.

    Clonar una lista de repositorio

    Clonar una lista de repositorio

  4. Haz clic en Elegir... y navega a la ruta local en donde quieres clonar el repositorio.

    El botón Choose (Elegir)

    El botón Choose (Elegir)

  5. Haz clic en Clone.

    El botón Clone (Clonar)

    El botón Clone (Clonar)

Configurar a Git para sincronizar tu bifurcación con el repositorio original

Cuando bifurcas un proyecto para proponer cambios en el repositorio original, puedes configurar Git para extraer cambios del original, o repositorio ascendente, en el clon local de tu bifurcación.

  1. En GitHub, dirígete al repositorio octocat/Spoon-Knife.

  2. Sobre la lista de archivos, da clic en Código. Botón de "Código"

  3. Para clonar el repositorio utilizando HTTPS, debajo de "Clonar con HTTPS", da clic en . Para clonar el repositorio utilizando una llave SSH, incluyendo un certificado que emita la autoridad de certificados SSH de tu organización, haz clic en Usar SSH y luego en . Para clonar un repositorio utilizando el CLI de GitHub, haz clic en Utilizar el CLI de GitHub y luego en . El icono de portapapeles para copiar la URL para clonar un repositorio

    El icono del portapapeles para copiar la URL para clonar un repositorio con el CLI de GitHub

  4. Abre la TerminalTerminalGit Bash.

  5. Cambia el directorio de la ubicación de la bifurcación que clonaste.

    • Para ir a tu directorio de inicio, escribe solo cd sin ningún otro texto.
    • Para generar una lista de los archivos y carpetas en tu directorio actual, escribe ls.
    • Para ir a uno de los directorios de la lista, escribe cd your_listed_directory.
    • Para subir un directorio, escribe cd ...
  6. Escribe git remote -v y presiona Intro. Verás el repositorio remoto configurado actualmente para tu bifurcación.

    $ git remote -v
    > origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
    > origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
  7. Escribe git remote add upstream y luego pega la URL que copiaste en el Paso 2 y presiona Intro. Se verá así:

    $ git remote add upstream https://github.com/octocat/Spoon-Knife.git
  8. Para verificar el nuevo repositorio ascendente que has especificado para tu bifurcación, escribe nuevamente git remote -v. Debes ver la URL para tu bifurcación como origin y la URL para el repositorio original como upstream.

    $ git remote -v
    > origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
    > origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
    > upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
    > upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)

Ahora, puedes mantener tu bifurcación sincronizada con el repositorio ascendente con unos pocos comandos Git. Para obtener más información, consulta "Sincronizar una bifurcación".

Para aprender más sobre el CLI de GitHub, consulta la sección "Acerca del CLI de GitHub".

Para configurar un repositorio remoto para el repositorio bifurcado, utiliza el marcador --remote.

gh repo fork repository --remote=true

Para especificar el nombre del repositorio remoto, utiliza el marcador --remote-name.

gh repo fork repository --remote-name "main-remote-repo"

Pasos siguientes

Puedes hacer cualquier cambio a una ramificación, incluyendo:

  • Crear ramas: Las ramas te permiten diseñar nuevas características o probar ideas sin poner en riesgo tu proyecto principal.
  • Abrir solicitudes de extracción: Si deseas colaborar con el repositorio original, puedes enviar una solicitud al autor original para extraer tu bifurcación en su repositorio enviando una solicitud de extracción.

Encontrar otro repositorio para bifurcar

Bifurca un repositorio para comenzar a colaborar con un proyecto. Puedes bifurcar un repositorio hacia tu cuenta de usuario o hacia cualquier organización en donde tengas permisos de creación de repositorios. Para obtener más información, consulta "Niveles de permisos para una organización".

Si tienes acceso a un repositorio privado y el propietario permite las bifurcaciones, puedes bifurcar el repositorio hacia tu cuenta de usuario o hacia cualquier organización en GitHub Team en donde tengas permisos de creación de repositorios. No puedes bifurcar un repositorio privado hacia una organización que utilice GitHub Free. Para obtener más información, consulta la sección "Productos de GitHub".

Puedes dirigirte a Explorar para encontrar proyectos y comenzar a colaborar con repositorios de código abierto. Para obtener más información, consulta "Encontrar formas de contribuir al código abierto en GitHub."

Celebrar

Ahora ya has bifurcado un repositorio, has practicado la clonación de tu bifurcación y has configurado un repositorio ascendente. Para obtener más información sobre cómo clonar la bifurcación y sincronizar los cambios en un repositorio bifurcado desde tu computadora, consulta la sección "Configurar Git".

También puedes crear un repositorio nuevo en donde pongas todos tus proyectos y compartir el código en GitHub. Para obtener más información, consulta la sección "Crear un repositorio".

Cada repositorio en GitHub pertenece a una persona u organización. Puedes interactuar con las personas, repositorios y organizaciones conectándote y siguiéndolos en GitHub. Para obtener más información, consulta la sección "Sé sociable ".

GitHub tiene una excelente comunidad de soporte en donde puedes pedir ayuda y hablar con las personas de todo el mundo. Únete a la conversación en la Comunidad de soporte de GitHub.

¿Te ayudó este documento?

Política de privacidad

¡Ayúdanos a hacer geniales estos documentos!

Todos los documentos de GitHub son de código abierto. ¿Notas algo que esté mal o que no sea claro? Emite una solicitud de cambios.

Haz una contribución

O, aprende cómo contribuir.