Git, оставьте только определенную ветку и сделайте ее основной, а остальные ветки удалите/удалите

Git, оставьте только определенную ветку и сделайте ее основной, а остальные ветки удалите/удалите

Я хочу сохранить коммиты синей ветки и пренебречь розовыми ветвями, поэтому в результате у меня будет одна ветвь, и она должна быть основной ветвью.

синяя ветвь — это «доработка», а розовые ветки (верхняя — «главная», нижняя — «основная»), обе они «не включены в голову», не знаю, что это значит.

Я думаю, что я все испортил, когда делаю «переработку» ветки, я думаю, что мне нужно было просто отменить коммиты обратно к «начальному» коммиту вместо того, чтобы создавать ветку.

У меня нет большого опыта в слиянии, я боюсь, что слияние будет включать изменения из розовых веток, и Я НЕ ХОЧУ, ЧТОБЫ БЫЛО ВКЛЮЧЕНО НИКАКОЕ ИЗМЕНЕНИЕ ИЗ РОЗОВЫХ ВЕТОК.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Просто (принудительно) удалите другие ветки, затем переименуйте свою ветку:

git branch -D master main
git checkout rework
git branch -m main

NB. коммиты ваших «розовых» веток будут недоступны и в основном потеряны. У вас больше не будет доступа к ним обычными средствами.

Это повлияет только на ваш локальный репозиторий. Если ветки уже существуют в удаленном репозитории, имейте в виду, что вы переписали историю своего репозитория. Это могло бы быть плохо, если бы оно было разделено между несколькими разработчиками. Если это нормально, вы можете принудительно отправить состояние локальной ветки в удаленный репозиторий.

так что, удалив ветки «мастер» и «основной», затронутые «переделки» не пострадают, верно? также что произойдет, когда я нажму на удаленный репозиторий github?

mr m 18.11.2022 22:58

Ветки @mrm в Git — это просто ярлыки, которые навешиваются на коммит. Эти ярлыки можно свободно перемещать или переименовывать. Удаление master и main не повлияет на доработку, но сделает несколько коммитов «недоступными». Удаленные репозитории не затрагиваются напрямую, сначала необходимо выполнить синхронизацию через git push.

knittl 18.11.2022 23:01

если что-то испортится после удаления main и master, я бы отменил это, клонировав репо из github?

mr m 18.11.2022 23:14

Если вы не отправлялись на GitHub, то получение или клонирование с GitHub вернет вам ваши старые ветки, да. Если вы уже (принудительно) отправили на GitHub, то нет.

knittl 18.11.2022 23:17

Другие вопросы по теме