Este es el escenario: doy repositorio de alguien de Github y lo clono en un directorio local. Hago un cambio, lo comprometo y lo empujo a mi repositorio bifurcado. A continuación, envío una solicitud de extracción al repositorio original, pero se rechaza por cualquier motivo. El repositorio original recibe algunos commits de otras personas, dejando mi versión bifurcada desactualizada. Ahora, ¿cómo obtengo la última versión del repositorio original (en mi repositorio bifurcado y localmente)? Y también, ¿cómo elimino mi historial de commit de Github para mi commit rechazado?¿Cómo vuelvo a tomar un repositorio Git bifurcado sin eliminar y volver a bifurcar?
Respuesta
Nunca haga sus propios cambios en la rama principal, debe crear una nueva rama, hacer los cambios y presionarla. De todas formas, si desea hacer su rama igual a la distancia hacer:
Asumiendo que tiene el sentido ascendente como un control remoto git fetch upstream
git checkout -f -B master upstream/master
El comando de checkout anterior sería que amo rama es no seguir adelante y sobrescribirlo con aguas arriba/maestro si no está allí crear desde el upstream/master.
Si usted no tiene añadido aguas arriba como un uso remoto git remote add upstream repositoryurl
EDIT: Debe ser -B
EDIT: git reset --hard upstream/master
es más apropiado realidad
Mantener sincronizado su depósito bifurcado en GitHub es un proceso de dos pasos.
Mantener tu repositorio local en sincronía con:
git fetch aguas arriba; git merge aguas arriba/maestro
Mantenga su tenedor en GitHub en sincronía con tu repositorio local de
git push origin master
Ver GitHub Fork A Repo alguna explicación. Necesita configurar 'ascendente' como un control remoto al repositorio desde el que bifurcó.
Para sus 'commits rechazados', si los hizo en una sucursal local, entonces puede simplemente eliminar la rama. Si no se encuentra en una sucursal local, deberá restablecer el HEAD de la sucursal de nuevo a la confirmación de su elección. Me gusta:
# Assume you are on master and need to go back to commit BeadBabe
git checkout -b temp
git branch -f master BeadBabe
git checkout master
git branch -d temp
Gone.
Me pareció un poco más claro que la respuesta aceptada. ¡Gracias por la explicación! – Tim
- 1. ¿Cómo actualizar un repositorio git bifurcado?
- 2. git tag eliminar y volver a añadir
- 3. ¿Cómo puedo bifurcar el repositorio original cuando ya he bifurcado una horquilla diferente?
- 4. ¿Cómo desactivo y vuelvo a habilitar un botón con javascript?
- 5. Cómo convertir un clon git de solo lectura de github a uno bifurcado
- 6. Cómo eliminar el origen del repositorio git
- 7. Leyendo un repositorio de Git, sin Git
- 8. Git force volver a HEAD ~ 7
- 9. git - eliminar archivo del repositorio
- 10. ¿Cómo volver a establecer la base de un repositorio de Git en otro?
- 11. Cómo eliminar y volver a agregar correctamente Entity Data Model
- 12. ¿Cómo volver a 'maestro' con git?
- 13. ¿Cómo desactivo y luego vuelvo a habilitar una advertencia?
- 14. ¿Cómo puedo bifurcar mi propio repositorio de GitHub?
- 15. Escribir directamente en un repositorio remoto de Git, sin agregar objetos a un índice/repositorio local?
- 16. ¿Cómo volver a combinar un archivo en el git?
- 17. ¿Cómo se bifurca un repositorio cuya subida ya ha bifurcado?
- 18. Convirtiendo un repositorio de git a subversión
- 19. ¿Puedo copiar un repositorio git a Windows?
- 20. copie un repositorio git sin revisiones (sin .git y .gitingore) desde un servidor remoto
- 21. ¿Cómo forzar a un script a volver a cargar y volver a ejecutar?
- 22. Vuelve a lo básico. ¿Cómo vuelvo a C++?
- 23. ¿Cuál es el propósito de bifurcar un git repo?
- 24. ¿Cómo presionar a un repositorio de Git no desnudo?
- 25. Git, ¿Cómo cambiar un repositorio descubierto a compartido?
- 26. ¿Cómo eliminar un repositorio local de Git de TortoiseGit?
- 27. Buscar y mostrar archivos en un repositorio git sin clonación
- 28. ¿Cómo puedo "volver a abrir" un commit de git?
- 29. GitHub: ¿Cómo bifurcar un repositorio público como un subdirectorio en un repositorio privado?
- 30. Cómo decirle a git que ignore todas las ediciones posteriores en un solo archivo sin eliminarlo del repositorio
posible duplicado de [Abandonando confirmaciones Git en Github para solicitudes de extracción rechazadas] (http://stackoverflow.com/questions/9538320/abandoning-git-commits-on-github-for-rejected-pull-requests) – CharlesB