После последнего pull'a с гитхаба выскочило из головы создать новую ветку для дальнейшей работы и все коммиты делались в мастер.
Сейчас хочу вновь залить проект на гитхаб для проверки и создать pull request.
Возможен ли такой путь:
создаю ветку branch1 (так понимаю она будет содержать инфу с последнего коммита мастера)
ее пушу на гитхаб
создаю PR между реповским мастером и только что залитой веткой branch1
Изменения будут видны?
Ответ
Можно оставить на текущем месте (с изменениями) новую ветку:
git checkout -b branch1
...и запушить только её
git push -u origin branch1
Да, изменения будут видны, если на сервере старый master
На этом этапе уже можно делать pull request.
Но локальный master при этом стоит откатить до состояния на сервере, чтобы избежать сюрпризов при дальнейшей работе. Это можно сделать в любой момент, но лучше всего после отправки branch1 на сервер, чтобы уж точно ничего не потерять.
git checkout master
git reset --hard origin/master
Последняя команда принудительно вешает ветку master в указанную точку (origin/master). В таком виде она относительно безопасна, т. к. история не переписывается, а чуть-чуть перемещается в прошлое.
Но в общем случае ею можно легко наделать дел и потерять новые коммиты. Поэтому хорошая привычка оставлять на месте, с которого ветка снимается, другую, запасную ветку. Здесь это уже сделано: как раз там лежит branch1
Комментариев нет:
Отправить комментарий