salve salve meu amigo minha amiga tudo beleza olha nessa aula realmente eu gostaria que você prestasse atenção porque a gente vai mostrar aqui Como ocorrem os conflitos conflito é uma coisa que geralmente faz os deves bater em um pouco a cabeça eu sou professor Pietro Martins de Oliveira e esse é o nosso curso de github Bora lá [Música] por gentileza peço aquele sempre aquele pedidão aquele anjo aquela ajudinha para você por favor deixe aqui o seu like se inscreva no canal Ative o Sininho para você aproveitar essas aulas Que Eu Estou entregando aqui para vocês
gratuitamente eu tenho certeza que isso vai ajudar a sua vida profissional beleza Vamos então ser mais delongas ao nosso curso de github lembrando um pouquinho sobre o que vimos na aula anterior falamos lá sobre purequests e Code review né Quais são os fluxos de ações é quais seriam as ações que o time deveria executar para executar um público Quest aqui para integrar código né E também aqui para fazer code review entre pares de programadores de programas bacana na aula de hoje falaremos um pouco sobre o que são conflitos como resolver esses conflitos tá a gente
vai mostrar aqui o fluxo de ações é para fazer nerd e também para resolver os conflitos e aí a gente vai falar um pouquinho sobre como manter a sua Branch local atualizada com os códigos do time E também qual é o fluxo de ação aí para atualização de uma Branch para você tá sempre com seu código em dia beleza muito bem então Git Marge e conflitos integrando códigos e resolvendo conflitos Vamos lá olha só primeira coisa né tá tendo o título do slide Não Temas não sofra complica normal ele vai acontecer tá você não pode
entrar em apavoro Beleza tem solução sempre tem solução sempre sempre Então vamos lá o que são conflitos conflitos veja bem são naturais e eles são problemas que surgem quando a gente tenta misturar integrar códigos fonte escrito por pessoas distintas então dois cometes distintos um comitilauto comete aqui é realizados em um mesmo arquivo Ok em uma mesma linha de código então pensa e alterei aqui o arquivo a na linha 10 você também do seu lado aí também alterou o arquivo a na linha 10 para que você escreveu uma coisa e eu escrevi outra coisa completamente diferente
naquela linha de código na hora que a gente vai tentar mesclar integrar os nossos códigos a gente tem um conflito tá comandos ou ações no Git que poderiam gerar conflitos Ok então comandos como Marge o ribase o Pou o stash ele pode gerar conflito Então como que a gente resolve é aqui Aqui eu não temas de verdade né como que a gente resolve os conflitos então a gente pode fazer alguma dentre essas opções aqui a gente pode escolher manter uma ou a outra alteração então se eu alterei Você alterou também ou fica a minha alteração
ou fica a sua beleza ou outra opção a gente pode inserir as duas alterações Então a gente vai decidir que tanto o meu código quanto seu código são importantes só que aí a gente precisa decidir uma coisa em conjunto em conjunto vai a sua linha em cima da minha a sua por baixo ou o contrário a sua por cima da minha e a minha linha por baixo né então a ordem na qual a linha de código ela aparece no arquivo Isso importa tá não importa porque Altera a lógica do programa tá a gente pode também
o terceiro momento aqui simplesmente remover as alterações né então a gente faz um margem mas todo o outro código ele vai ser comentado beleza mas aquela ali que tá com conflito nem a minha nem a chuva vai ser incluída Ali vai todo o resto menos aquilo ou em uma última situação a gente simplesmente cancela o verde por completo e rever o que que aconteceu aí faz uma análise melhor para poder dar sequência tá beleza então qual que seria o fluxo de ações aqui ó foi feito por equest foi feito por request gerou-se um conflito Ok
o que que pode acontecer aqui esse conflito ele vai para etapa de solução de conflito então a gente conversa ver o que que vai ser feito se fica a minha linha você fica a sua você fica a linha dos dois se remove as duas ou se Cancela a coisa toda aí a gente termina lá o processo de code review aceita ou simplesmente ignora o request tá beleza muito bem uma coisa importante é que é o seguinte veja se você tá Geralmente se você tá vou até colocar minha cara aqui na frente Olha só se você
tá no momento em que você tá compartilhando seu código com o time você tá escrevendo o time tá escrevendo o código vocês estão construindo o sistema o que que é importante que você faça e assim numa Eu recomendo que você faça isso diariamente né porque diariamente Se o time for de duas três quatro 10 pessoas diariamente provavelmente vai ter gente publicando o código então o que que você faz você tá escrevendo teu código no outro dia ou todo dia de manhã você vai lá e faz um pum pum p u LL né você faz o
download do código remoto para o seu código local Ok atualiza a tua Branch para que para que você tenha sempre o código mais atual estão nos espionando bendito bendito Android Bom vamos lá voltando Por que que você quer atualizar a tua Brandt para você evitar o máximo de conflitos futuros se você e não certo dia você vai lá atualiza a tua Brant e já dá conflito é melhor que você resolva esse conflito quanto antes Porque quanto mais tempo você demora mais códigos seu e dos outros vai ser alterado e conforme a coisa evolui Pode ser
que mais conflito surjam quanto mais conflito você tiver que resolver de uma vez só pior para o time pior para você ok sacou Então essa é a ideia Beleza então olha só Qual que é a ideia aqui manter a Branch atualizada manter o seu código atualizado com o time é simplesmente fazer um Marge da Branch de longo termo geralmente Abrantes de desenvolvimento né para a minha Branch local para sua Branch local aí só pegar o código da galera e colocar junto com o teu para ver se você tá em Dia com o código da Galera
E aí pode tem que ter de conflito Pode ser que dê conflito então que que vai acontecer Quais são as possíveis soluções é qual caminho que você pode seguir para para solucionar esses conflitos de atualização se for algo pontual ali que você sabe que Você alterou e que o código do teu colega que tá vindo esse é o código que deve ficar você já sabe como resolver geralmente você mantém o código do outro e deixa o teu Ou se você achar que vale a pena então aí você vai lá e conversa com essa pessoa ou
com o analista para ver se de fato é o teu código que fica ou se é o código da pessoa que fica ou como que vai ser isso se vai alterar o código dos dois enfim né então você pode resolver sozinho ou você vai lá e conversa com o time para ver como que resolve isso né mas a ideia é que você sempre deixa a sua Branch up todate você sempre deixa sua brente atualizadinha bem legal ali tá porque porque Futuramente você vai ter menos problemas na hora de fazer purecast Qual que é o grande
choro da galera que manda um Quest cheio de conflitos geralmente o desenvolvedor tá na pressa desenvolvedor Sênior o teclad ali ou enfim alguém faz o murder tá na pressa ele cara ele vê o teu o teu públicost ver tanta que tanto conflito tanto problema que o seu código você trabalhou uma duas três semanas naquele código E aí simplesmente vai ter que refazer muita coisa porque cara você foi muito prolixo você simplesmente você exagerou ali é no no número de conflito número de alterações que você propôs naquele público Quest okay então isso é muito importante é
muito importante mesmo isso aqui já é uma coisa mais avançadinha se você é Júnior se você é estagiário você provavelmente não vai passar muito por esse tipo de problema tá mas é bom que você saiba que isso existe Maravilha Olha só então que que vai acontecer quando você tenta fazer as atualizações Então você tem as suas alterações locais quando você tenta dar um pum né como eu falei para vocês aí você é forçado a fazer o que você dá o cu a hora que você vai fazer o pum você tem código lá que você não
fez convite ainda que você tá atualizado mas que ele não tá state né então quando você dá o pull Às vezes o Git fala assim olha eu não consigo dar o cu você precisa dar um jeito no código que Você alterou aí porque Você alterou o código tá diferente do código original mas eu não consigo jogar o código original no tempo porque você tem alterações aí você precisa salvar isso de alguma forma Então você vai salvar isso de uma forma ou outra ou você usa o comando stech ou você dá um Comet naquilo que você
tem né então você precisa pensar no que que você vai fazer geralmente dá-se o convite quando Realmente você sabe que você já terminou aquilo que você tem certeza que você pode dar convite em outro caso se você não tem certeza você pode recorrer ao comando de desgaste Maravilha Então qual que seria que o fluxo de ações para você manter a sua Branch atualizada você faz um check-out lá da Brant você sai da sua Branch vai para Brant original né Você vai para Brant eh de longo termo tá longo prazo você dá um pulo nela ou
seja você pega na sua Branch local você vai para Branch de longo prazo no seu computador localmente você dá um pulo do github para o seu Git local bacana E aí você troca da sua Branch de longo termo para sua Branch original que você tá fazendo ali alteração para sua Branch perdão para sua mente da Fit para sua Branch da implementação da solução de um bug enfim para sua Branch short livre Então de novo Aonde você começa você começa na frente de longo termo você atualiza ela depois você troca para sua Branch que é a
que você tá fazendo a sua alteração de fato E aí como você já fez a atualização da sua Branch de longo termo você vai ter visualizar a sua Branch de curto termo Ok então você dá um murge você dá um murge entre a sua Branch da feature e a Brant que você acabou de pegar do time Ok nesse momento pode ser que surjam os conflitos pode ser se não surgir Maravilha Se surgir conflito tem que solucionar os conflitos você pode tentar solucionar isso sozinho ou não né você pode pedir ajuda do time E aí você
vai lá e depois de conflito feito você pode dar sequência na sua vida se você quiser subir isso para o github de novo ou se você quiser fazer mais convites em cima aí é livre tá livre né se você não tiver conflito Ó você simplesmente elimina essas etapas aqui e passa direto lá para continuidade do teu código bacana beleza se não ficou Claro agora fique tranquilo fique tranquila a gente vai fazer isso na prática daqui a pouco tá Então olha só o que que a gente viu Nessa aula a gente falou aqui do que são
conflitos Quais as possibilidades de solução conflitos a sequência de passos que a gente faz para chegar num conflito uma das sequência de Passos possíveis Falamos também aqui da atualização da tua Branch tá e a gente viu Quais são os fluxos de atualização de Branch aí para você tá sempre com o seu código local é em linha com o código da galera com código da equipe bacana próxima aula faremos aqui alguns experimentos para resolver conflitos Fique tranquilo Fique tranquilo na aula prática Imagina eu você vai entender melhor bacana muito bem muito bem Estamos chegando ao fim
da aula aqui Agradeço a vocês que assistiram até aqui por gentileza se chegar até aqui e ainda não deixaram like peça esse valor exato deixa o like aí pra gente e se inscreva no canal Ative o Sininho né não esqueça disso por favor é assim que você me ajuda aqui no YouTube bacana outra coisa que eu vou te deixar aqui a sugestão é que se você não entendeu Se você quer a melhor explicações ou quer dar sugestões para fazer alguma crítica um elogio que seja deixa nos comentários aqui que isso é muito útil para mim
também para melhorar os meus conteúdos cada vez mais bacana fica por aqui então a gente se vê na próxima aula até mais [Música]