Skip to content

Commit 9be0989

Browse files
committed
Привести к единообразию "перебазирование"
1 parent b381c4c commit 9be0989

File tree

2 files changed

+14
-14
lines changed

2 files changed

+14
-14
lines changed

book/03-git-branching/sections/rebasing.asc

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ image::images/basic-rebase-4.png["Перемотка ветки `master`"]
6060
Учтите, что снимок, на который ссылается ваш последний коммит -- является ли он последним коммитом после перебазирования или коммитом слияния после слияния -- в обоих случаях это один и тот же снимок, отличаются только истории коммитов.
6161
Перебазирование повторяет изменения из одной ветки поверх другой в том порядке, в котором эти изменения были сделаны, в то время как слияние берёт две конечные точки и сливает их вместе.
6262

63-
==== Более интересные перемещения
63+
==== Более интересные перебазирования
6464

6565
Также возможно сделать так, чтобы при перебазировании воспроизведение коммитов применялось к совершенно другой ветке.
6666
Для примера возьмём <<rrbdiag_e>>.
@@ -83,8 +83,8 @@ $ git rebase --onto master server client
8383
В этой команде говорится: «Переключись на ветку `client`, найди изменения относительно ветки `server` и примени их для ветки `master`».
8484
Несмотря на некоторую сложность этого способа, результат впечатляет.
8585

86-
.Перемещение тематической ветки, ответвлённой от другой тематической ветки
87-
image::images/interesting-rebase-2.png["Перемещение тематической ветки, ответвлённой от другой тематической ветки"]
86+
.Перебазирование тематической ветки, ответвлённой от другой тематической ветки
87+
image::images/interesting-rebase-2.png["Перебазирование тематической ветки, ответвлённой от другой тематической ветки"]
8888

8989
Теперь вы можете выполнить перемотку (fast-forward) для ветки `master` (см <<rrbdiag_g>>):
9090

@@ -133,21 +133,21 @@ $ git branch -d server
133133
image::images/interesting-rebase-5.png["Окончательная история коммитов"]
134134

135135
[[r_rebase_peril]]
136-
==== Опасности перемещения
136+
==== Опасности перебазирования
137137

138138
(((перебазирование, опасности)))
139139
Но даже перебазирование, при всех своих достоинствах, не лишено недостатков, которые можно выразить одной строчкой:
140140

141-
**Не перемещайте коммиты, уже отправленные в публичный репозиторий**
141+
**Не перебазируйте коммиты, уже отправленные в публичный репозиторий**
142142

143143
Если вы будете придерживаться этого правила, всё будет хорошо.
144144
Если не будете, люди возненавидят вас, а ваши друзья и семья будут вас презирать.
145145

146-
Когда вы что-то перемещаете, вы отменяете существующие коммиты и создаёте новые, похожие на старые, но являющиеся другими.
146+
Когда вы что-то перебазируете, вы отменяете существующие коммиты и создаёте новые, похожие на старые, но являющиеся другими.
147147
Если вы куда-нибудь отправляете свои коммиты и другие люди забирают их себе и в дальнейшем основывают на них свою работу, а затем вы переделываете эти коммиты командой `git rebase` и выкладываете их снова, то ваши коллеги будут вынуждены заново выполнять слияние для своих наработок.
148148
В итоге, когда вы в очередной раз попытаетесь включить их работу в свою, вы получите путаницу.
149149

150-
Давайте рассмотрим пример того, как перемещение публично доступных наработок может вызвать проблемы.
150+
Давайте рассмотрим пример того, как перебазирование публично доступных наработок может вызвать проблемы.
151151
Предположим, вы клонировали репозиторий с сервера и сделали какую-то работу.
152152
И ваша история коммитов выглядит так:
153153

@@ -179,7 +179,7 @@ image::images/perils-of-rebasing-4.png["Вы снова выполняете с
179179
Логично предположить, что разработчик не хочет, чтобы `C4` и `C6` были в истории, и именно поэтому она перебазируется в первую очередь.
180180

181181
[[r_rebase_rebase]]
182-
==== Меняя базу, меняй основание
182+
==== При перебазировании, перебазируйте
183183

184184
Если вы попали в такую ситуацию, у Git есть особая магия чтобы вам помочь.
185185
Если кто-то в вашей команде форсирует отправку изменений на сервер, переписывающих работу, на которых базировалась ваша работа, то ваша задача будет состоять в определении того, что именно было ваше, а что было переписано ими.
@@ -199,8 +199,8 @@ image::images/perils-of-rebasing-4.png["Вы снова выполняете с
199199
Таким образом, вместо результата, который мы можем наблюдать на <<r_merge_rebase_work>>, у нас получилось бы что-то вроде <<r_rebase_rebase_work>>.
200200

201201
[[r_rebase_rebase_work]]
202-
.Перемещение в начало force-pushed перемещённой работы
203-
image::images/perils-of-rebasing-5.png["Перемещение в начало force-pushed перемещённой работы"]
202+
.Перебазирование в начало force-pushed перебазированной работы
203+
image::images/perils-of-rebasing-5.png["Перебазирование в начало force-pushed перебазированной работы"]
204204

205205
Это возможно, если `C4` и `C4'` фактически являются одним и тем же патчем, который был сделан вашим коллегой.
206206
В противном случае `rebase` не сможет определить дубликат и создаст ещё один патч, подобный `C4` (который с большой вероятностью не удастся применить чисто, поскольку в нём уже присутствуют некоторые изменения).
@@ -211,14 +211,14 @@ image::images/perils-of-rebasing-5.png["Перемещение в начало f
211211
Если вы используете `git pull` и хотите использовать `--rebase` по умолчанию, вы можете установить соответствующее значение конфигурации `pull.rebase` с помощью команды `git config --global pull.rebase true`.
212212

213213
Если вы рассматриваете перебазирование как способ наведения порядка и работаете с коммитами локально до их отправки или ваши коммиты никогда не будут доступны публично -- у вас всё будет хорошо.
214-
Однако, если вы перемещаете коммиты, отправленные в публичный репозиторий, и есть вероятность, что работа некоторых людей основывается на этих коммитах, то ваши действия могут вызвать существенные проблемы, а вы -- вызвать презрение вашей команды.
214+
Однако, если вы перебазируете коммиты, отправленные в публичный репозиторий, и есть вероятность, что работа некоторых людей основывается на этих коммитах, то ваши действия могут вызвать существенные проблемы, а вы -- вызвать презрение вашей команды.
215215

216216
Если в какой-то момент вы или ваш коллега находите необходимость в этом, убедитесь, что все знают, как применять команду `git pull --rebase` для минимизации последствий от подобных действий.
217217

218-
==== Перемещение vs. Слияние
218+
==== Перебазирование в сравнении со слиянием
219219

220220
(((перебазирование, против слияния)))(((слияние, против перебазирования)))
221-
Теперь, когда вы увидели перемещение и слияние в действии, вы можете задаться вопросом, что из них лучше.
221+
Теперь, когда вы увидели перебазирование и слияние в действии, вы можете задаться вопросом, что из них лучше.
222222
Прежде чем ответить на этот вопрос, давайте вернёмся немного назад и поговорим о том, что означает история.
223223

224224
Одна из точек зрения заключается в том, что история коммитов в вашем репозитории -- это *запись того, что на самом деле произошло*.

book/09-git-and-other-scms/sections/client-svn.asc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ ones (if any) seem to be successfully integrated into the working tree.
233233
Please see the above messages for details.
234234
----
235235

236-
Чтобы решить эту проблему запустите `git svn rebase`, которая заберёт все ревизии с сервера, которых у вас пока нет, и переместит (rebase) ваши локальные наработки на них:
236+
Чтобы решить эту проблему запустите `git svn rebase`, которая заберёт все ревизии с сервера, которых у вас пока нет, и перебазирует (rebase) ваши локальные наработки на них:
237237

238238
[source,console]
239239
----

0 commit comments

Comments
 (0)