trabajar - Obtenga nuevas actualizaciones del repositorio original de GitHub en el repositorio bifurcado de GitHub
tipos de etiquetas en git (5)
Además de la respuesta de VonC, podría ajustarla a su gusto aún más.
Después de obtener el archivo desde la rama remota, aún tendría que combinar las confirmaciones. Yo reemplazaria
$ git fetch upstream
con
$ git pull upstream master
ya que git pull es esencialmente git fetch + git merge.
Bifurqué el repositorio de alguien en GitHub y me gustaría actualizar mi versión con confirmaciones y actualizaciones realizadas en el repositorio original. Estos fueron hechos después de que yo entregué mi copia.
¿Cómo puedo incorporar los cambios que se realizaron en el origen e incorporarlos a mi repositorio?
Debe agregar el repositorio original (el que bifurcó) como un control remoto.
Desde la página del hombre de GitHub fork :
Una vez que se complete el clon, su repo tendrá un control remoto llamado "
origin
" que apunta a su fork en GitHub.
No permita que el nombre lo confunda, esto no apunta al repositorio original del que se bifurcaron. Para ayudarlo a realizar un seguimiento de ese repositorio, agregaremos otro control remoto llamado "upstream":
$ cd github-services
$ git remote add upstream git://github.com/pjhyett/github-services.git
$ git fetch upstream
# then: (like "git pull" which is fetch + merge)
$ git merge upstream/master master
# or, better, replay your local work on top of the fetched branch
# like a "git pull --rebase"
$ git rebase upstream/master
También tienes una gema de rubí que puede facilitar esas operaciones de GitHub .
Véase también " Git fork is git clone? ".
Este video muestra cómo actualizar un fork directamente desde GitHub
Pasos:
- Abra su tenedor en GitHub.
- Haga clic en
Pull Requests
. - Haga clic en
New Pull Request
. De manera predeterminada, GitHub comparará el original con su fork, y no debería haber nada para comparar si no hizo ningún cambio. - Haga clic en
switching the base
. Ahora GitHub comparará tu horquilla con el original, y deberías ver todos los cambios más recientes. - Haga clic en
Create a pull request
para esta comparación y asigne un nombre predecible a su solicitud de extracción (por ejemplo, Actualización del original). - Haga clic en
Create pull request
. - Desplácese hacia abajo y haga clic en
Merge pull request
y finalmenteConfirm
combinación. Si su bifurcación no tuvo ningún cambio, podrá fusionarlo automáticamente.
Si está utilizando la aplicación de escritorio GitHub, hay un botón de sincronización en la esquina superior derecha. Haga clic en él y luego en Update from <original repo>
cerca de la parte superior izquierda.
Si no hay cambios para sincronizar, esto estará inactivo.
Aquí hay algunas capturas de pantalla para hacer esto fácil.
Utilizar:
git remote add upstream ORIGINAL_REPOSITORY_URL
Esto configurará tu upstream al repositorio desde el que bifurcaste. Entonces haz esto:
git fetch upstream
Esto buscará todas las ramas, incluido el maestro, del repositorio original.
Combine estos datos en su rama maestra local:
git merge upstream/master
Empuje los cambios a su repositorio bifurcado, es decir, a origen:
git push origin master
Voila! Ha terminado con la sincronización del repositorio original.