Страницы

Поиск по вопросам

пятница, 31 января 2020 г.

Pull request git

#git #github


После последнего pull'a с гитхаба выскочило из головы создать новую ветку для дальнейшей
работы и все коммиты делались в мастер.

Сейчас хочу вновь залить проект на гитхаб для проверки и создать pull request.

Возможен ли такой путь:


создаю ветку branch1 (так понимаю она будет содержать инфу с последнего коммита мастера)
ее пушу на гитхаб
создаю PR между реповским мастером и только что залитой веткой branch1


Изменения будут видны?
    


Ответы

Ответ 1



Можно оставить на текущем месте (с изменениями) новую ветку: 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.

Ответ 2



Можно спрятать локальные изменения, спулиться, а потом их смерджить обратно git reset --soft commit_name git stash git pull --ff-only origin master git stash apply // тут могут предложить смерджиться, если автомердж не прошел. после этого можно продолжать разработку в актуальном мастере

Комментариев нет:

Отправить комментарий