You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Обратите внимание, что текущая ветка `corrected-branch-name`, которая также присутствует и на удалённом сервере.
117
+
Однако, старая ветка всё ещё по-прежнему там, но её можно удалить с помощью команды:
118
+
119
+
[source,console]
120
+
----
121
+
$ git push origin --delete bad-branch-name
122
+
----
123
+
124
+
Теперь старое имя ветки полностью заменено исправленным.
125
+
126
+
===== Изменение имени главной ветки
127
+
128
+
[WARNING]
129
+
====
130
+
Изменение имени ветки, например master/main/mainline/default, сломает интеграции, службы, вспомогательные утилиты и скрипты сборки, которые использует ваш репозиторий.
131
+
Прежде чем сделать это, обязательно проконсультируйтесь с коллегами.
132
+
Также убедитесь, что вы выполнили тщательный поиск в своём репозитории и обновили все ссылки на старое имя ветки в вашем коде или скриптах.
133
+
====
134
+
135
+
Переименуйте локальную ветку `master` в `main` с помощью следующей команды:
136
+
137
+
[source,console]
138
+
----
139
+
$ git branch --move master main
140
+
----
141
+
142
+
После этого, локальной ветки `master` больше не существует, потому что она была переименована в ветку `main`.
143
+
144
+
Чтобы все остальные могли видеть новую ветку `main`, вам нужно отправить её в общий репозиторий.
145
+
Это делает переименованную ветку доступной в удалённом репозитории.
146
+
147
+
[source,console]
148
+
----
149
+
$ git push --set-upstream origin main
150
+
----
151
+
152
+
В итоге, состояние репозитория становится следующим:
153
+
154
+
[source,console]
155
+
----
156
+
git branch --all
157
+
* main
158
+
remotes/origin/HEAD -> origin/master
159
+
remotes/origin/main
160
+
remotes/origin/master
161
+
----
162
+
163
+
Ваша локальная ветка `master` исчезла, так как она заменена веткой `main`.
164
+
Ветка `main` доступна в удалённом репозитории.
165
+
Старая ветка `master` всё ещё присутствует в удалённом репозитории.
166
+
Остальные участники будут продолжать использовать ветку `master` в качестве основы для своей работы, пока вы не совершите ряд дополнительных действий.
167
+
168
+
Теперь, для завершения перехода на новую ветку перед вами стоят следующие задачи:
169
+
170
+
* Все проекты, которые зависят от текущего, должны будут обновить свой код и/или конфигурацию.
171
+
* Обновите конфигурацию всех запускаемых тестов.
172
+
* Исправьте скрипты сборки и публикации артефактов.
173
+
* Поправьте настройки репозитория на сервере: задайте новую ветку по умолчанию, обновите правила слияния, а также прочие настройки, которые зависят от имени веток.
174
+
* Обновите документацию, исправив ссылки, указывающие на старую ветку.
175
+
* Слейте или отмените запросы на слияние изменений, нацеленные на старую ветку.
176
+
177
+
После того, как вы выполнили все эти задачи и уверены, что ветка `main` работает так же, как ветка `master`, вы можете удалить ветку `master`:
Copy file name to clipboardExpand all lines: book/03-git-branching/sections/nutshell.asc
+17-8Lines changed: 17 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@
14
14
[source,console]
15
15
----
16
16
$ git add README test.rb LICENSE
17
-
$ git commit -m 'initial commit of my project'
17
+
$ git commit -m 'Initial commit'
18
18
----
19
19
20
20
Когда вы создаёте коммит командой `git commit`, Git вычисляет контрольные суммы каждого подкаталога (в нашем случае, только основной каталог проекта) и сохраняет его в репозитории как объект дерева каталогов.
@@ -81,9 +81,9 @@ image::images/head-to-master.png["HEAD указывает на ветку"]
81
81
[source,console]
82
82
----
83
83
$ git log --oneline --decorate
84
-
f30ab (HEAD, master, testing) add feature #32 - ability to add new
85
-
34ac2 fixed bug #1328 - stack overflow under certain conditions
86
-
98ca9 initial commit of my project
84
+
f30ab (HEAD -> master, testing) Add feature #32 - ability to add new formats to the central interface
85
+
34ac2 Fix bug #1328 - stack overflow under certain conditions
86
+
98ca9 Initial commit
87
87
----
88
88
89
89
Здесь можно увидеть указывающие на коммит `f30ab` ветки: `master` и `testing`.
0 commit comments