Переименовать удаленную ветку, не удаляя ее - PullRequest
0 голосов
/ 29 мая 2020

Мне нужна ваша помощь, чтобы переименовать удаленную ветку.
Я создал PR, но теперь мне нужно переименовать имя удаленной ветки.
Я не хочу следовать процессу, когда мне нужно переименовать локальную затем pu sh и удалите старую ветку, потому что она очистит PR.
Есть ли способ просто переименовать удаленную ветку, и PR должен остаться как есть. спасибо.

Ответы [ 2 ]

1 голос
/ 29 мая 2020

Переименование удаленной ветки в Git на самом деле просто создает новую ветку с такими же коммитами и новым именем и удаляет старую ветку. В зависимости от того, где у вас открыт запрос на вытягивание (вы не указываете, Github, Gitlab, Phabricator или что-то еще), у вас могут быть некоторые параметры, предоставленные вам инструментом, работающим в репозитории локально, где существует запрос на вытягивание. Я могу сказать только для Github, что нет ни возможности переименовать ветку в их интерфейсе, ни возможности изменить ветку «сравнить» в запросе на перенос.

Лучшее решение (для Github) - это, вероятно, создать новую ветку и новый пул реквест, опубликовать комментарий к старому пул реквесту о том, что он был «закрыт в пользу #NEW» и «продолжение #OLD» к новому. Затем удалите старую ветку, которая также закроет старый запрос на вытягивание.

Быстрый oneliner для удаления старой ветки и создания новой с тем же содержимым :

git push <remote> <remote>/<old>:refs/heads/<new> :<old>

где remote очевидно - например, origin, old и new - имена старых и новых ветвей соответственно.

0 голосов
/ 29 мая 2020

Я не хочу следовать процессу, когда мне нужно переименовать локальную ветку, затем pu sh и удалить старую ветку.

Я не думаю, что есть другой путь. Вы можете попробовать изменить ветку на экране PR, но я полагаю, вы бы уже пробовали это. как GitHub или BitBucket. Так сказать стандартно, реализация полностью зависит от системы.

...