‫Neste vídeo, vamos falar sobre Git e GitHub e controle de origem, agora você deve se lembrar do GitHub de nossa seção
‫anterior, onde o usamos para colocar o site online, mas vou mostrar que é muito mais do que
‫isso .
‫Mais importante, obter o GitHub é usado pela maioria das empresas profissionais e é uma habilidade que se espera
‫que seja conhecida por todos os desenvolvedores agora.
‫Portanto, esta é uma seção importante.
‫Uma das primeiras coisas que a maioria dos desenvolvedores precisa fazer no primeiro dia de trabalho é atender
‫a algo chamado pull request, que usa Git e GitHub.
‫Veremos isso nesta seção.
‫Não se preocupe, você aprenderá tudo isso e fará sentido.
‫Vamos primeiro começar com o controle de origem.
‫Até agora, trabalhamos apenas em arquivos pequenos.
‫Nenhum membro da equipe, apenas nós, apenas alguns arquivos.
‫Mas na vida real, você provavelmente não é o único desenvolvedor em uma equipe.
‫Provavelmente, os projetos são enormes, há muitos, muitos arquivos, o controle de origem nos permite ter certeza
‫de que várias pessoas podem trabalhar no mesmo arquivo em locais diferentes.
‫Pense nisso como um Google Docs que permite que as pessoas colaborem em um documento, mas chega de conversa, vamos realmente dar
‫uma olhada.
‫Eu configurei aqui duas pastas.
‫Um é para mim, Andre, que acabou de começar um novo emprego na X Company, e a Marsi está aqui, que já trabalha
‫na empresa há algum tempo e ela tem arquivos de projetos aqui.
‫Na verdade, estou usando os arquivos do nosso gerador de vídeo em segundo plano agora sem obter o GitHub.
‫O que posso fazer é apenas copiar e colar esses arquivos.
‫Tenho tudo o que Marcy tem e podemos começar a trabalhar nesses arquivos.
‫Posso ter meu ambiente de desenvolvedor aqui com meu terminal e meu texto sublime, e posso trabalhar em todas as alterações que
‫precisam ser feitas no aplicativo.
‫E Marci.
‫Aqui também tem sua própria versão onde ela pode trabalhar nele, e nós dois estamos trabalhando no
‫mesmo projeto, mas digamos que Marcy e eu estamos trabalhando neste projeto e ela decide mudar o nome
‫do projeto de fundo gradiente para super fundo.
‫E ao mesmo tempo, no meu projeto, decido chamar esse background de bacana.
‫Bem, agora você terá que marcar uma reunião entre eu e Marcy e decidir como devemos alterar o
‫código.
‫E este é um pequeno exemplo, mas você pode imaginar que, conforme diferentes programadores trabalham juntos, sempre
‫haverá esse problema de uma pessoa mudando uma coisa e outra mudando outra.
‫É aqui que entra o controle social.
‫E o controle social é uma forma de controlar isso, onde temos um lugar em vez do nosso.
‫Computadores, neste caso, são representados apenas pela pasta que tenho aqui.
‫Em vez de cada um de nós ter uma cópia do projeto com o Source Control, temos uma cópia do projeto.
‫Mas há um local centralizado em algum lugar, talvez pertencente à empresa ou em algum lugar na Internet que tenha
‫a versão final com a qual cada um de nós fala para garantir que cada um de nós tenha a mesma versão.
‫Obter o GitHub é uma forma de fazer isso, de poder usar o controle social.
‫E, na verdade, é a maneira de fazer isso de fato.
‫Como eu disse antes, esta é provavelmente a ferramenta que você usará todos os dias em seu local de trabalho.
‫Então, se eu for ao site do GitHub aqui, o que ele nos permite fazer é um lugar, um lugar central com
‫o qual Andre e Marcy podem conversar.
‫Portanto, embora trabalhemos nos mesmos arquivos, no mesmo projeto.
‫Posso perguntar a este local central, como o GitHub, ei, a Marsi fez alguma alteração e o Marsic pode perguntar, ei, como o
‫Andrew fez as alterações?
‫E de vez em quando você obterá algo assim, onde temos um fundo legal
‫e um super fundo, onde temos algo chamado conflito de mesclagem, o que o GitHub nos permite fazer é dizer, ei, percebi que há um
‫conflito de mesclagem.
‫Vejo que vocês dois mudaram sua formação.
‫Eu não sei quem está certo.
‫Mas aqui está a informação.
‫Andre Marsi, vocês podem conversar entre si e descobrir?
‫Isso é muito trabalho, então vamos realmente ver como é.
‫A primeira coisa que queremos fazer é configurar uma conta GitHub; se você não fez isso nos exercícios
‫anteriores, é absolutamente necessário iniciar uma conta GitHub.
‫É grátis.
‫E como eu disse antes, se você é um desenvolvedor, você só precisa ter.
‫É onde todos colocam seus projetos.
‫É onde você trabalha.
‫Você vai passar muito tempo neste site.
‫Você deve se lembrar que, quando tínhamos o projeto GitHub, também pedi para você obter o GitHub para desktop.
‫Embora usemos isso para simplificar as coisas durante o vídeo, essa não é a maneira recomendada de
‫fazer isso.
‫Ele permite que você veja e interaja visualmente com o GitHub.
‫Mas isso é menosprezado pelos empregadores.
‫E a maioria das pessoas usa o termo e / ou o prompt de comando para realmente fazer isso.
‫Portanto, não vou ensiná-lo dessa forma só porque acho que é uma má prática e que é importante
‫se acostumar com o terminal.
‫Vou fechar isso e vamos começar.
‫A primeira coisa que vamos fazer é clicar em Iniciar um Projeto.
‫E aqui vamos chamá-lo do que você quiser, vamos chamá-lo de gerador de fundo, e você também
‫deseja deixá-lo como público.
‫E queremos clicar em inicializar isso com um README e clicaremos em criar repositório e o que isso
‫faz.
‫Bem, criamos um novo projeto no GitHub e aqui o README, que é apenas um arquivo que descreve o seu
‫projeto.
‫Você pode ver que está aqui.
‫Podemos digitar no read me o que quisermos e descrever nosso projeto.
‫Mas vamos voltar.
‫Se a Marsi, digamos que a Marsi já trabalha nesta empresa há muito tempo, na verdade vou remover
‫meus arquivos aqui.
‫Marcy trabalha nesta empresa há muito tempo e o empregador finalmente decidiu, ei, precisamos usar
‫o GitHub, vamos contratar um novo cara, Andre.
‫Queremos ter certeza de que vocês dois podem trabalhar nisso, no projeto juntos, sem problemas.
‫Você pode colocar o projeto no GitHub?
‫Então, o que Marcy fará é acessar o GitHub, criar um gerador de segundo plano e, em
‫seguida, clicar aqui para clonar ou baixar e certificar-se de que diz use https.
‫E a partir daqui, basta clicar nesse botão, que copia esse link para o seu teclado, depois em Marsi.
‫Vai para o terminal dela, e agora estamos em documentos, queremos ter o projeto na pasta Marcy, então verei dentro
‫de Marcy se clicar, a menos que ainda veja isso.
‫Eu tenho meus arquivos.
‫Agora, o primeiro comando que vamos aprender é chamado GET.
‫Klown.
‫Em seguida, copie e cole o que copiamos do site, estamos apenas dizendo, ei, clone este projeto do
‫GitHub ponto com.
‫Então, pressiono Enter e pronto.
‫Tudo é baixado.
‫Se eu voltar para a pasta agora, vejo que tenho um gerador de fundo.
‫Se eu clicar duas vezes nisso, você verá que tenho uma pasta dot get aqui que está realmente oculta.
‫Você pode nem mesmo vê-lo no seu laptop se não tiver esse recurso habilitado no computador.
‫Mas este Dugit agora permite que eu me comunique com o GitHub.
‫Então, o que podemos fazer agora, Marsi pode copiar e colar esses arquivos e colocá-los em um gerador de segundo plano.
‫Agora, deixe-me mostrar o próximo comando get Marsi agora, se vemos que ela está em sua pasta.
‫Mas agora precisamos ir para o gerador de segundo plano porque se fizermos bons comandos aqui, bem, não
‫funcionará porque não é um bom projeto.
‫Precisamos realmente entrar no projeto que foi criado no GitHub.
‫Então, vou semear nesse diretório notis aqui.
‫Eu tenho meu terminal configurado para que ele realmente me mostre em que local do GitHub estou e explicarei o que Master
‫significa mais tarde.
‫Agora que estamos aqui, podemos ver todos os nossos arquivos.
‫Sim, eu vejo isso agora.
‫Eu tenho meu read me, que criei no GitHub, mais os arquivos que copio e colo.
‫Precisamos afundar isso para que, se eu entrar em meu gerador de segundo plano em vez de ler os arquivos, Marcy
‫possa colocar seus arquivos no GitHub.
‫A maneira como fazemos isso é nosso segundo comando get status.
‫Ele nos diz que temos arquivos de entrada, ou seja, indexamos scripts de e-mail e estilo que são entradas e diz
‫usar obter adicionar arquivo para incluir o porquê, o que será permitido.
‫Portanto, agora que vemos nosso status do que temos em nossa pasta, podemos dizer
‫get add e o nome do arquivo para que eu possa indexar ponto html, obter o script e obter acesso ao estilo de adição.
‫Vamos esclarecer isso para que possamos ver.
‫E agora posso obter status novamente, apenas para ver qual é o nosso status.
‫E agora eu tenho seus branches em dia com as mudanças a serem confirmadas.
‫Você vê que agora com ADD dissemos, ei, queremos adicionar essas alterações.
‫Temos novos arquivos que adicionamos e que estão para ser confirmados.
‫Portanto, a segunda etapa é fazer algo chamado get, commit e get commit, ei, estou cometendo isso.
‫Estas são as alterações que desejo fazer no GitHub.
‫E permite que você passe uma mensagem para que no GitHub mostre a mensagem.
‫Quando Andre voltar, ele pode dizer, oh, Marsi adicionou esses arquivos e esta é a mensagem.
‫E fazemos isso fazendo isso.
‫E aqui dentro, dentro dos códigos duplos, posso dizer acrescentando iniciar um projeto, fechar o centro de imprensa de
‫colchetes.
‫Vou esclarecer isso agora.
‫Há uma última etapa que adicionamos.
‫Conseguimos add para adicionar nossas mudanças, então nos comprometemos a confirmar e dizer, sim, estamos bloqueando essas
‫mudanças.
‫E, finalmente, precisamos informar ao GitHub Dotcom que essas são as mudanças.
‫Então, nós conseguimos empurrar.
‫E aí está.
‫Agora ele foi enviado para este repositório, então se eu voltar.
‫E eu atualizo.
‫Olha só, é a mesma coisa que fizemos quando colocamos nosso primeiro site online, mas em
‫vez de usar a versão desktop do GitHub, usamos a linha de comando e agora temos nosso projeto, que é
‫muito bom.
‫Agora, vamos voltar ao nosso exemplo.
‫Marsia está trabalhando neste projeto.
‫Há um bom repositório e acabei de entrar na empresa e agora preciso começar a trabalhar nisso.
‫O que eu faço agora, preciso acessar o GitHub e obter a cópia do Background Generator da forma como faço isso, bem, vou
‫para a minha pasta.
‫E eu faço a mesma coisa que faço com o Klown e copio e colo o repositório como
‫antes, git clone e clone o repo e pronto.
‫Se eu voltar para minha pasta, olhe para ela.
‫Eu tenho um gerador de plano de fundo, então nós dois estamos trabalhando agora no gerador de plano de fundo, mas não fora dos arquivos um do
‫outro.
‫Estamos trabalhando com qualquer versão do GitHub.
‫Tudo bem.
‫Então, agora mais realista, voltamos ao trabalho.
‫E no primeiro dia do meu trabalho, digo que vou mudar o
‫título de fundo da Grania, na verdade, a tag H1 para gerador legal se eu salvar isso e obtiver o status.
‫OK, bem, não estou em um bom repositório agora, se você se lembra, tenho que ir para o gerador de
‫fundo.
‫Deixe-me abrir um pouco para que você possa ver.
‫Lá vai você de novo, esses comandos de dar não funcionarão se você não estiver em uma pasta que tenha uma pasta docket.
‫Então deixe-me fazer aquele CD no gerador de fundo.
‫Vou limpar isso e vou dizer para obter o status e olhar para isso.
‫Isso me diz que modifiquei o índice, não o Alpha.
‫E se você se lembra, direi git add.
‫Eu só tenho um arquivo.
‫Posso fazer isso em HTML.
‫Mas se eu quisesse ter vários arquivos e apenas confirmá-los de uma vez, posso apenas fazer o ponto
‫final.
‫Então vou fazer isso e, em seguida, obter o commit e adicionarei uma mensagem mudando o título.
‫Eu pressiono enter e limpo isso, OK, e novamente, eu recebo push.
‫E parece que tudo deu certo, então vamos abrir e dar uma olhada.
‫Eu agora atualizo o seu.
‫E o que não vimos nenhuma mudança, mas agora vemos que temos três commits, temos o commit inicial a adição
‫de volta no projeto que o Marsi fez, e mostra todos os arquivos que foram adicionados.
‫E se eu voltar, tenho o commit de mudança de título, e agora vejo que, sim, Andre apenas mudou o
‫gerador de fundo, que está em vermelho para gerador frio.
‫Como você pode ver, temos um histórico de todas as mudanças e sempre podemos voltar se houver
‫algum erro, mas há um problema no momento.
‫Se eu voltar ao código e for ao computador de Marcy, vejo isso.
‫Bem, ela ainda tem um gerador de fundo aqui.
‫Por que é que?
‫Bem, porque o computador dela não sabe que o GitHub foi atualizado.
‫O próximo comando que vou mostrar a vocês, este é o último que vou mostrar a vocês neste vídeo
‫é get pull.
‫Portanto, lembre-se de obter push para enviar as alterações para GitHub dotcom e puxar para puxar o que for mais recente.
‫Então eu consigo puxar.
‫E pronto, você vê aqui que isso me mostra que o índice que o arquivo ASML foi alterado foi alterado.
‫Agora você vê isso, meu.
‫O título foi alterado para gerador legal, vamos apenas dizer que Marcy viu minha primeira mudança e ela realmente
‫gostou de como eu tenho um gerador legal, mas acho que ela quer torná-lo capitalizado novamente.
‫Ela vai salvar isso.
‫Ela vai dizer para obter status.
‫Tudo bem.
‫Eu tenho meu índice que vou obter e, em seguida, obter o commit e a mensagem capacitada para o título de Lai e, em seguida, obter o
‫push.
‫Lá vai você de novo, eu volto.
‫Eu atualizo e agora há quatro comentários e vemos o título em maiúscula.
‫É.
‫As novas mudanças, o primeiro dia de trabalho está feito, eu chego no próximo dia de trabalho
‫e bem, eu quero começar com qualquer que seja o último projeto de volta ao gerador.
‫E vamos dizer que Marcy trabalhou a noite toda para mudar esse título para Cool Capitalized.
‫Quero ter certeza de que tenho a versão mais atualizada.
‫Então o que eu faço é quando eu chegar ao trabalho pela manhã, eu direi, bem, eu
‫quero ter certeza de que se houver alguma mudança que Marcy fez eu sei, então eu direi puxar e
‫notar aqui como os títulos vão mudar depois que eu puxar.
‫E agora clico no texto sublime e pronto.
‫Gerador legal.
‫Tudo bem, e no próximo vídeo, vamos expandir isso e mostrar o que acontece se
‫Marci e Andre fizerem as mesmas alterações, o que o GitHub faz?
‫Eu vou ver naquele por.