Skip to main content
Publicamos actualizaciones para la documentación con frecuencia y es posible que aún se esté traduciendo esta página. Para obtener la información más reciente, consulta la documentación en inglés.

Contribuir a proyectos

Aprende la forma de contribuir en un proyecto mediante la bifurcación.

Acerca de las bifurcaciones

Si quieres contribuir al proyecto de otra persona, pero no tienes acceso de escritura al repositorio, puedes usar un flujo de trabajo de la "bifurcación y la solicitud de incorporación de cambios".

Una bifurcación es un nuevo repositorio que comparte la configuración de visibilidad y código con el repositorio “ascendente” original. Las bifurcaciones se suelen usar para iterar ideas o cambios antes de que se vuelvan a proponer al repositorio ascendente, como en proyectos de código abierto o cuando un usuario no tiene acceso de escritura al repositorio ascendente.

Puedes contribuir enviando solicitudes de incorporación de cambios de la bifurcación al repositorio ascendente. Para obtener más información, vea «Bifurcar un repositorio».

Bifurcar un repositorio

En este tutorial se usa el proyecto Spoon-Knife, un repositorio de prueba hospedado en GitHub.com que le permite probar el flujo de trabajo de la bifurcación y la solicitud de incorporación de cambios.

  1. Vaya al proyecto Spoon-Knife en https://github.com/octocat/Spoon-Knife.
  2. Haga clic en Fork (Bifurcar). Botón Bifurcar
  3. Selecciona un propietario para el repositorio bifurcado. Creación de una página de bifurcación con la lista desplegable Propietario resaltada
  4. De forma predeterminada, las bifurcaciones tienen el mismo nombre que sus repositorios ascendentes. Puedes cambiar el nombre de la bifurcación para distinguirlo aún más. Creación de una página de bifurcación con el campo Nombre del repositorio resaltado
  5. Opcionalmente, puedes agregar una descripción de la bifurcación. Creación de una página de bifurcación con el campo Descripción resaltado
  6. Elige si quieres copiar solo la rama predeterminada, o bien todas las ramas en la nueva bifurcación. En muchos escenarios de bifurcación, como los de contribución a proyectos de código abierto, solo tienes que copiar la rama predeterminada. De forma predeterminada, solo se copia la rama predeterminada. Opción para copiar solo la rama predeterminada
  7. Haz clic en Crear bifurcación. Botón Crear bifurcación resaltado

Nota: Si quieres copiar ramas adicionales del repositorio ascendente, puedes hacerlo desde la página Ramas. Para obtener más información, vea «Crear y eliminar ramas en tu repositorio».

Clonar una bifurcación

Bifucrcaste el repositorio Spoon-Knife exitosamente pero, hasta ahora, solo existe en GitHub. Para poder trabajar en el proyecto, necesitarás clonarlo en tu computadora.

Puedes clonar tu bifurcación con la línea de comandos, el GitHub CLI o GitHub Desktop.

  1. En GitHub, vaya a su bifurcación del repositorio Spoon-Knife.

  2. Encima de la lista de archivos, haga clic en Código. Botón "Código"

  3. Copia la dirección URL del repositorio.

    • Para clonar el repositorio con HTTPS, en «HTTPS» haz clic en .
    • Para clonar el repositorio mediante una clave SSH, incluido un certificado emitido por la entidad de certificación SSH de la organización, haga clic en Usar SSH y luego en .
    • Para clonar un repositorio mediante GitHub CLI, haz clic en GitHub CLI y, después, haz clic en . El icono del portapapeles para copiar la URL para clonar un repositorio con el CLI de GitHub 1. Abra TerminalTerminalGit Bash. 4. Cambia el directorio de trabajo actual a la ubicación en donde quieres clonar el directorio.
  4. Escriba git clone y pegue la dirección URL que ha copiado antes. Tendrá este aspecto, con su nombre de usuario de GitHub en lugar de YOUR-USERNAME:

    $ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
  5. Presione ENTRAR. 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 más información sobre GitHub CLI, consulta "Acerca del CLI de GitHub".

Para crear un clon de la bifurcación, use la marca --clone.

gh repo fork REPOSITORY --clone=true
  1. En el menú File, haga clic en Clone Repository.

    Captura de pantalla de la barra de menús en un equipo Mac. El menú desplegable "Archivo" se expande y la opción "Clonar repositorio" está resaltada con un contorno naranja.

    Captura de pantalla de la barra de menús "Escritorio de GitHub" en un equipo Windows. El menú desplegable "Archivo" se expande y la opción "Clonar repositorio" está resaltada con un contorno naranja.

    1. Haz clic en la pestaña que corresponde a la ubicación del repositorio que deseas clonar. También puede hacer clic en **URL** para especificar manualmente la ubicación del repositorio.

    Captura de pantalla de la ventana "Clonar un repositorio". En la parte superior de la ventana, las pestañas con la etiqueta "GitHub.com", "GitHub Enterprise" y "URL" se resaltan con un contorno naranja. 1. En la lista de repositorios, haz clic en el repositorio que quieras clonar.

    Captura de pantalla de la ventana "Clonar un repositorio". El repositorio "github/docs" está resaltado con un contorno naranja. 1. Para seleccionar el directorio local en el que quieres clonar el repositorio, junto al campo "Ruta de acceso local", haz clic en Elegir... y ve al directorio.

    Captura de pantalla de la ventana "Clonar un repositorio". Un botón, con la etiqueta "Elegir", está resaltado con un contorno naranja.

    El botón Elegir

    1. En la parte inferior de la ventana "Clonar un repositorio", haz clic en **Clonar**.

Creación de una rama en la que trabajar

Antes de realizar cambios en el proyecto, debes crear una rama y restaurarla. Al mantener los cambios en su propia rama, seguirás el flujo de GitHub y te asegurarás de que sea más fácil volver a contribuir al mismo proyecto en el futuro. Para obtener más información, vea «Flujo de GitHub».

git branch BRANCH-NAME
git checkout BRANCH-NAME
git branch BRANCH-NAME
git checkout BRANCH-NAME

Para más información sobre cómo crear y administrar ramas en GitHub Desktop, consulta "Administrar ramas".

Hacer y subir cambios

Continúe y realice algunos cambios en el proyecto con su editor de texto favorito, como Visual Studio Code. Por ejemplo, podría cambiar el texto de index.html para agregar su nombre de usuario de GitHub.

Cuando estés listo para enviar tus cambios, pruébalos y confírmalos. git add . indica a Git que quiere incluir todos sus cambios en la siguiente confirmación. git commit toma una instantánea de esos cambios.

git add .
git commit -m "a short description of the change"
git add .
git commit -m "a short description of the change"

Para más información sobre cómo agregar cambios al "stage" y confirmarlos en GitHub Desktop, consulta "Confirmar y revisar cambios en su proyecto".

Cuando pruebas y confirmas archivos, esencialmente le dices a Git "¡Ok, toma una captura de mis cambios!" Puedes seguir haciendo más cambios y tomando más capturas de las confirmaciones.

Ahora mismo, tus cambios solo existen localmente. Cuando estés listo para subir tus cambios a GitHub, sube tus cambios al remoto.

git push
git push

Para más información sobre cómo insertar cambios en GitHub Desktop, consulta "Cargar cambios en GitHub".

Hacer una solicitud de cambios

¡Por fin, estás listo para proponer cambios en el proyecto principal! Este es el paso final para producir una bifurcación del proyecto de alguien más y, probablemente, el más importante. Si hiciste un cambio que piensas que beneficiará a la comunidad integralmente, debes considerar en retribuir con esta contribución.

Para hacerlo, dirígete al repositorio de GitHub en donde vive tu proyecto. En este ejemplo, sería https://github.com/<your_username>/Spoon-Knife. Verá un banner que indica que la rama está una confirmación por delante de octocat:main. Haga clic en Contribute (Contribuir) y,después, en Open a pull request (Abrir una solicitud de incorporación de cambios).

GitHub le dirigirá a una página que muestra las diferencias entre la bifurcación y el repositorio octocat/Spoon-Knife. Haga clic en Create pull request (Crear solicitud de incorporación de cambios).

GitHub te llevará a una página en donde podrás ingresar un título y una descripción de tus cambios. Es importante que proporciones tanta información útil y racional para explicar el porqué de la solicitud de cambios en primer lugar. El propietario del proyecto necesita poder determinar si tu cambio es tan útil para todos como tú piensas que lo es. Por último, haga clic en Create pull request (Crear solicitud de incorporación de cambios).

Adminsitrar la retroalimentación

Las solicitudes de cambios son un área de debate. En este caso, el Octocat está muy ocupado y, probablemente, no fusionará tus cambios. Para el caso de otros proyectos, no te ofendas si el dueño del proyecto rechaza tu solicitud de cambios o pide más información sobre por qué se hizo. Incluso, podría suceder que el propietario del proyecto elija no fusionar tu solicitud de cambios, y esto está totalmente bien. Los cambios existen en la bifurcación. Y, quién sabe... Tal vez alguien que jamás hayas conocido pensará que tus cambios son mucho más valiosos que el proyecto original.

Búsqueda de proyectos

Bifurcaste y retribuiste al proyecto de un repositorio con éxito. ¡Sigue contribuyendo! Para más información, consulta "Encontrar maneras para colaborar con el código abierto en GitHub".