Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Все валят с TFS и Azure Devops?

25.05.23 09:55
Re: Все валят с TFS и Azure Devops?
 
MrSanders коренной житель
в ответ alex445 25.05.23 01:47, Последний раз изменено 25.05.23 09:56 (MrSanders)
вроде сначала коммит и пуш, затем пулл, и затем снова пуш

Правильно не помнишь. От такой последовательности действий никаких мержей не будет.

"внезапные" ответвления от локальной ветки появляются когда у тебя есть различия между локальной веткой и ремоут (удалённая звучит как будто её кто-то удалил), с которой ты свою локальную ветку синхронизируешь. Если эти изменения нельзя разрешить простым fast-forward мержем.


Примеры.

Локальная          Ремоут           git push             git pull
A-B-C             A-B              добавит C в ремоут    ничего не сделает
A-B               A-B-C            ничего не сделает     добавит C в локальную
A-B-C             A-B-D            пошлёт делать пулл    замержит D с C, содаст E в локальной

     C
   /   \
A-B--D--E - так будет выглядеть локальная ветка после git pull

Многим не нравится видеть такую ветвистую историю. На помощь спешит параметр --rebase (git pull --rebase) ну или настройки. Можно настроить что все pull по умолчанию делаются с --rebase, можно для конкретной ветки. В третьем примере после git pull --rebase у нас в локальной ветке появится такое:

A-B-D-C' где C' это изменённый C. Ну, про rebase ты же в курсе, да?

 

Перейти на