У меня есть локальная ветка, my_branch
, которую я сделал после клонирования repo
.Я сделал два коммита (сначала последний коммит):
- Обновления YAML
- Основные изменения
Я нажал на свою ветку и сделал PR.Потребовалось время, чтобы одобрить его, и теперь я не могу слиться чисто в origin/master
.
Я хотел бы избавиться от моего YAML updates
коммита, перезапустить процесс, который генерирует эти изменения локально, и воспроизвести мои изменения на origin/master
, исправляя любые конфликты на этом пути.
Правильный ли это подход:
Отбросьте мой YAML updates
коммит с git reset --soft HEAD^
git checkout master; git pull origin master
git checkout my_branch; git checkout origin/master config1.yaml; git checkout origin/master config2.yaml
Повторно запустить процесс для создания обновлений YAML
git add config1.yaml config2.yaml
git commit -m "Updating YAML files"
git rebase -i master
Если я столкнусь с конфликтами слияний, я должен исправить их и запустить git rebase --
continue
Предполагая, 7. успешно, git push -f
РЕДАКТИРОВАТЬ: выполняет те же шаги, что и выше, но поменять местами шаги 4 и 7. эквивалентно выполнениюшаги с 1. по 8. последовательно?
Обычно я просто пробую вышеупомянутое, прежде чем спрашивать, но не хочу портить мой местный филиал или пиар.