Задать вопрос

Как убрать коммит из пуша?

Картинки из интернета, но ситуация по сути такая же:
7-pHJQmbj8o.jpg
Суть в том, что первый коммит "Сделал хорошо" его сделал в мастер мой коллега, при этом команда git status показывает файлы изменённые в моей локальной копии только 4 остальными коммитами, т.е. изменения коллеги он не видит. Но если я сдлеаю push сейчас то будет конфликт между моей устаревшей версией master и новой версия файла в первом коммите от коллеги.
Варианты:
1) Сделать push, разрешить конфликт вручную
2) Скачать себе последнюю версию файла который был изменён коллегой с мастера, этот файл отразится у меня как изменённый, запушить всё вместе
3) Удалить как-то этот коммит и предложить после пуша pull request без него. После этого уже скачать себе обновлённый мастер
  • Вопрос задан
  • 2805 просмотров
Подписаться 8 Простой 4 комментария
Помогут разобраться в теме Все курсы
  • ProductStar
    Python + Flask + Git: веб-разработка с нуля
    2 месяца
    Далее
  • Учебный центр IBS
    DEV-007 Введение в систему контроля версий Git
    1 неделя
    Далее
  • Stepik
    Git (система контроля версий)
    1 неделя
    Далее
Решения вопроса 1
lunaticman
@lunaticman
Дерзкий айтишник
Никогда не разрабатывайте в master бранче! Всегда делайте отдельную ветку git checkout -b new_branch_baby

Чтобы сейчас выйти из этой неловкой ситуации вам нужно:
- Скопировать все изменения в отдельный бранч ( git checkout -b my_changes )
- Почистить мастер от своих изменений ( git checkout master ; git rebase -i HEAD~6 )
- обновить мастер бранч ( git pull origin master )
- обновить свой бранч (git checkout my_changes ; git rebase master )

удачи
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
Made In Dream Санкт-Петербург
от 100 000 до 220 000 ₽
от 250 000 до 320 000 ₽