Skip to main content

Contribuir a proyectos

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

Acerca de las bifurcaciones

Después de utilizar GitHub tú mismo por un tiempo, puede que quieras contribuir con el proyecto de alguien más. O tal vez te gustaría utilizar el proyecto de alguien más como punto inicial de uno propio. A este proceso se le conoce como bifurcación.

Crear una "bifurcación" es producir una copia personal del proyecto de alguien más. Las bifurcaciones son un tipo de puente entre el repositorio original y tu copia personal. Puedes emitir solicitudes de cambios para ayudar a mejorar los proyectos de otras personas al ofrecerles tus cambios para el proyecto original. La bifurcación es el núcleo del desarrollo de código social en GitHub. Para obtener más información, consultaBifurcar un repositorio."

Bifurcar un repositorio

Este tutorial utiliza el proyecto Spoon-Knife, un repositorio de prueba que se hospeda en GitHub.com y te permite probar el flujo de trabajo de la bifurcación y solicitud de cambios.

  1. Navega al proyecto Spoon-Knife en https://github.com/octocat/Spoon-Knife.
  2. Haz clic en Bifurcar. Botón Bifurcar
  3. Select an owner for the forked repository. Create a new fork page with owner dropdown emphasized
  4. By default, forks are named the same as their parent repositories. You can change the name of the fork to distinguish it further. Create a new fork page with repository name field emphasized
  5. Optionally, add a description of your fork. Create a new fork page with description field emphasized
  6. Choose whether to copy only the default branch or all branches to the new fork. For many forking scenarios, such as contributing to open-source projects, you only need to copy the default branch. By default, only the default branch is copied. Option to copy only the default branch
  7. Click Create fork. Emphasized create fork button

Note: If you want to copy additional branches from the parent repository, you can do so from the Branches page. Para obtener más información, consulta "Crear y eliminar ramas dentro de tu repositorio".

Clonar una bifurcación

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

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

  1. En GitHub Enterprise Server, 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. Copia la URL del repositorio.

    • Para clonar el repositorio utilizando HTTPS, debajo de "HTTPS", haz clic en .
    • Para clonar el repositorio utilizando una llave SSH, incluyendo un certificado que emita la autoridad de certificados SSH de tu organización, da clic en SSH y luego en .
    • Para clonar un repositorio utilizando el CLI de GitHub, haz clic en CLI de GitHub y luego en . 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 Enterprise Server en lugar de YOUR-USERNAME:

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

    $ git clone https://nombre de host/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)

Hacer y subir cambios

Ve y haz algunos cambios al proyecto utilizando tu editor de texto favorito, como Visual Studio Code. Podrías, por ejemplo, cambiar el texto en index.html para agregar tu nombre de usuario de GitHub.

Cuando estés listo para enviar tus cambios, pruébalos y confírmalos. git add . le dice a Git que quieres incluir todos tus cambios en la siguiente confirmación. git commit toma una captura de estos cambios.

git add .
git commit -m "a short description of the change"
git add .
git commit -m "una descripción corta del cambio"

Para obtener más información sobre cómo probar y confirmar los cambios en GitHub Desktop, consulta la sección "Confirmar y revisar los cambios a tu 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 Enterprise Server, sube tus cambios al remoto.

git push
git push

Para obtener más información sobre cómo subir cambios a GitHub Desktop, consulta la sección "Subir cambios a GtiHub".

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 Enterprise Server en donde vive tu proyecto. Para este ejemplo, esto sería en https://www.github.com/<your_username>/Spoon-Knife. Verás un letrero que indica que tu rama está una confirmación por delante de octocat:main. Haz clic en Contribuir y luego en Abrir solicitud de cambios.

GitHub Enterprise Server te llevará a una página que mostrará las diferencias entre tu bifurcación y el repositorio de octocat/Spoon-Knife. Haz clic en Create Pull Request (Crear solicitud de extracción).

GitHub Enterprise Server 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. Finalmente, haz clic en Crear una solicitud 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. Tu copia existirá en la infamia del internet. 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.

Encontrar proyectos

Bifurcaste y retribuiste al proyecto de un repositorio con éxito. ¡Ve y contribuye más!