Esta respuesta de un compañero de trabajo fijo mi problema:
git checkout -b NEW_BRANCH_NAME LAST_COMMIT_NAME_BEFORE_THE_ONE_WANTED
git cherry-pick COMMIT_NAME_WANTED
git push origin NEW_BRANCH_NAME
A continuación, en GitHub se puede hacer una solicitud de extracción para la nueva rama que ha creado.
ACTUALIZACIÓN
que plantear y responder a esta pregunta, cuando empecé a trabajar con git. Ahora que sé más al respecto, me gustaría ampliar esta respuesta.
Al trabajar con un tenedor, es probable que desee mantenerlo actualizado con respecto al repositorio original. Así que estos serían los pasos que seguiría hoy:
git remote add upstream GIT_URL_OF_THE_ORIGINAL_REPO
Ahora usted tiene una referencia llamada upstream
lo que apunta a que la cesión temporal. Por defecto también debería tener otro llamado origin
que apuntaría a su tenedor en este caso. upstream
y origin
es la forma en que las personas suelen nombrar estas referencias, pero puede usar el nombre que desee.
Ahora tiene que obtener los últimos cambios:
git fetch upstream
Entonces, si usted desea actualizar su tenedor con los cambios de upstream
que haría esto:
git checkout master //checkout your master branch
git merge upstream/master //merge changes from the master branch in upstream into the branch you checked out (master)
git push origin master //if you want to push your updated master to your remote fork
Ahora, para responder la pregunta original, qué haría hoy si quisiera presentar un nuevo RP, sería:
git fetch upstream //get the latest changes from the original repo
git checkout -b my_new_feature upstream/master //create a new branch, starting from the master in the original repo
git cherry-pick WHATEVER_COMMIT_I_WANT //select the commit I want and add it to this new branch
git push origin my_new_feature //push a new branch to my fork
Luego solicitaría un nuevo RP para la sucursal my_new_feature
.
Puede reemplazar git cherry-pick WHATEVER_COMMIT_I_WANT
con solo modificar/agregar un archivo y luego hacer git add FILENAME
, git commit -m "Fixing some stuff"
.
posible duplicación de [solicitud de extracción de Github sin confirmaciones antiguas] (http://stackoverflow.com/questions/5415560/github-pull-request-without-old-commits) – Talljoe
Al igual que la respuesta encontrada por Talljoe, se puede combinar el maestro de nivel superior de su rama o rebase su maestro sobre el maestro de nivel superior. –