У меня есть ветвь, которая была совершена, нажата и объединена с мастером. Он не прошел QA. Нам нужно вытащить эту ветку из мастера для выпуска. Как вытащить эту ветку из мастера. Предположим, название ветвь «чтобы быть удалены»Git: Как удалить ветку, которая уже была зафиксирована, нажата и объединена с мастером?
ответ
По this post
Если, с другой стороны, вы хотите, чтобы действительно избавиться от всего, что вы сделали с тех пор, есть две возможности. Во-первых, если вы еще не опубликованы какие-либо из этих фиксаций, просто сброс:
# This will destroy any local modifications.
# Don't do it if you have uncommitted work you want to keep.
git reset --hard 0d1d7fc32
# Alternatively, if there's work to keep:
git stash
git reset --hard 0d1d7fc32
git stash pop
# This saves the modifications, then reapplies that patch after resetting.
# You could get merge conflicts, if you've modified things which were
# changed since the commit you reset to
С другой стороны, если Вы опубликовали работу, вы, вероятно, не хотите сбросить ветку, так как это эффективно переписывание истории. В этом случае вы действительно можете вернуть фиксации. С git revert имеет очень специфическое значение: создайте фиксацию с помощью обратного патча, чтобы отменить ее. Таким образом, вы не переписываете какую-либо историю.
# This will create three separate revert commits:
git revert 0766c053 25eee4ca a867b4af
# It also takes ranges. This will revert the last two commits:
git revert HEAD~2..HEAD
# To get just one, you could use `rebase -i` to squash them afterwards
# Or, you could do it manually (be sure to do this at top level of the repo)
# get your index and work tree into the desired state, without changing HEAD:
git checkout 0d1d7fc32 .
# and then commit
git commit # be sure and write a good message describing what you just did
Вы должны иметь историю так:
A--B--C---D--E <-- Master
\ /
Z--Y--X <-- Your feature
И вы хотите, чтобы удалить совершить D из главной ветви. Вам нужно только вернуть эту фиксацию. Существует команда мерзавец так:
git revert -m 1 [sha_of_D]
где -m
означает родительский номер фиксации.
Он создаст новую фиксацию в главном, отменив изменения, внесенные вашей веткой признаков. Для получения дополнительной информации вы можете перейти на the main source.
- 1. Могу ли я безопасно удалить ветку темы Git, которая была объединена с мастером?
- 2. можем ли мы зафиксировать ветку, которая уже была объединена с мастером?
- 3. Проверка, если ветка Git была объединена с мастером при SQUASHED?
- 4. После сброса восстановите ветвь, которая была зафиксирована, но не нажата
- 5. Как объединить ветку, которая уже разрешила конфликты с мастером?
- 6. восстановить удаленную ветку удаленной ветки github, которая не была объединена с мастером
- 7. Как исправить ошибку в ветке после того, как она уже была объединена с мастером?
- 8. Постройте только ветку Git, которая была нажата на
- 9. Фиксация «назад» git merge, которая была нажата
- 10. Проверьте, была ли ветка объединена с мастером и не была удалена
- 11. Как удалить удаленную ветку с помощью Git?
- 12. Как сделать ветку git новым мастером?
- 13. Удалить фиксацию, которая объединена с основной веткой
- 14. Как создать ветку, которая может быть синхронизирована с ведущим мастером?
- 15. Git: как увидеть работу, которая была сделана на ветке, которая теперь объединена
- 16. Какая ветка была зафиксирована?
- 17. Git roll назад к предыдущей фиксации, которая не была нажата
- 18. Git - как удалить ветку?
- 19. Как увидеть ветку, созданную мастером
- 20. Показать уникальные изменения в ветке темы (даже если она уже была объединена с мастером)
- 21. Как сделать ветку тестирования главной веткой, которая нажата на git?
- 22. Удалите ветку git, которая была дублирована с тем же именем
- 23. git: как восстановить удаленную ветвь, которая не объединена
- 24. Проблема слияния ветки Git Feature в ветку «Бета» (после того, как она уже была объединена с филиалом «Развивать»)
- 25. Отменить конкретную фиксацию из объединенной ветки, которая уже была нажата
- 26. Как найти последний набор изменений ветки, которая была объединена в другую ветку в Mercurial
- 27. Как безопасно удалить удаленную ветку git?
- 28. Почему git pull не тянет вновь созданную ветку, которая была нажата на удаленный?
- 29. Проверка того, что ветвь разработки была объединена в ветку функций?
- 30. Как синхронизировать развивать ветку с мастером