Aguarde...

28 de agosto de 2020

Conceitos Git e fluxo de trabalho para iniciantes

Conceitos Git e fluxo de trabalho para iniciantes

Aprenda os comandos git mais populares e um modelo de ramificação simples, mas eficaz

Os desenvolvedores de software geralmente escrevem toneladas de código todos os dias. Eles podem estar trabalhando em um novo projeto ou ajustando um existente. Mas, depois de algum tempo, a base de código pode crescer o suficiente para que seja muito difícil gerenciar ou rastrear quaisquer alterações.

Por exemplo, e se uma equipe de desenvolvedores de software estiver trabalhando em um aplicativo. Agora, como eles podem rastrear o membro da equipe que fez uma alteração específica?

Pode não ser um problema se uma equipe consistir apenas de dois ou três membros. Mas, imagine se eles estivessem em torno de 10, 20 ou até 1000?

Agora, parece uma tarefa difícil. Não é?

Você não precisa se preocupar porque é aqui que um Sistema de Controle de Versão (VCS) entra em jogo.

Antes de executar qualquer comando, acho melhor primeiro falar sobre o conceito de VCS e Git. Isso ajudará você a entender por que precisamos disso e como isso pode melhorar nosso fluxo de trabalho existente.


O que é um sistema de controle de versão?

É apenas um software que mantém automaticamente um registro de todas as alterações em um projeto. Dessa forma, uma equipe pode se concentrar na criação de um produto real em vez de lidar com tarefas não produtivas, como quem modificou um arquivo específico.

Além disso, como o VCS é um software de computador, ele é mais preciso e rápido do que nós. De qualquer forma, vamos dar uma olhada nos diferentes tipos de sistemas de controle de versão.

  1. Controle de versão centralizadoComo o próprio nome sugere, no sistema de Controle de Versão Centralizado um projeto é armazenado em um local único / central (por exemplo, Servidor). Aqui, um membro da equipe pode baixar os arquivos que deseja alterar e, após fazer o trabalho, simplesmente carregá-los no servidor.O software CVC mais popular é conhecido como Subversion .
  2. Controle de versão distribuídaEm um DVCS (Distributed Version Control System), cada membro da equipe tem acesso a uma cópia completa do projeto em seu computador local. Não requer um servidor central, mas você pode precisar de um para colaborar facilmente com seus colegas de equipe.Hoje em dia, o conceito de DVCS é muito popular devido ao fato de que nos permite trabalhar em um projeto sem nos preocupar com uma conexão de internet. Só precisamos nos conectar sempre que quisermos fazer o upload das alterações para o servidor.Git é um exemplo de Sistema de Controle de Versão Distribuída que você aprenderá hoje.

Visão geral do Git

Git é o sistema de controle de versão distribuída mais comumente usado. Ele mantém um registro de todas as alterações em um projeto, tirando instantâneos. Isso significa que você pode facilmente reverter para qualquer versão / estado anterior de um projeto.

Em 2005, Linus Torvalds lançou a primeira versão do Git. Não se esqueça de que ele é a mesma pessoa que criou o sistema operacional Linux.

No início, o Git era destinado ao uso por equipes de desenvolvimento de software. Mas é flexível o suficiente para rastrear qualquer tipo de arquivo. Portanto, não importa se você é professor, empresário, designer gráfico ou redator de conteúdo, o Git pode ajudá-lo a rastrear automaticamente seus projetos.


Colabore com colegas de equipe

Nesta seção, você aprenderá como os membros da equipe podem usar o Git para colaboração. Basicamente, vou ajudá-lo a entender o fluxo de trabalho real do Git. Mais tarde, você verá como o Git nos fornece comandos predefinidos para cada propósito. Então vamos começar.

  1. Crie um “Repositório” no servidor central. Um repositório é apenas uma pasta que está sendo controlada pelo software Git.
  2. Baixe o repositório em seu computador. Em termos de VCS, geralmente nos referimos a essa etapa como “clonagem”.
  3. Adicione arquivos neste repositório e envie-os. Git tira um instantâneo do projeto sempre que você envia algo. Em seguida, ele mantém um histórico de instantâneos para uso posterior.
  4. Faça upload dos arquivos modificados no servidor.
  5. Baixe todos os arquivos modificados por seus colegas de equipe.

Portanto, este é o fluxo de trabalho básico de qualquer projeto que usa Git para controle de versão. Agora, vamos ver como podemos realmente implementar esses conceitos usando comandos Git.


Crie um Repositório

Por padrão, o software Git não rastreia todos os arquivos em seu computador. Precisamos informar ao Git sobre a pasta específica que ele deve rastrear.

Para fazer isso, abra seu prompt de comando ou terminal dentro da pasta específica e execute o comando abaixo.

git init

Este comando converte o diretório atual em um repositório. Basicamente, ele informa ao software Git para começar a rastrear todos os arquivos e pastas dentro deste repositório.

Um ponto a ser observado é que todos os comandos do Git começam com a palavra-chave git.


Diretório de trabalho, área de teste e repositório

Conceitos Git e fluxo de trabalho para iniciantes
Seções do ambiente de desenvolvimento Git

Basicamente, um ambiente de desenvolvimento Git consiste em três seções. O conceito por trás dessas seções é de importância fundamental. Portanto, preste atenção extra porque tudo o mais vai depender disso.

  1. Diretório de trabalhoEle simplesmente se refere ao estado atual dos arquivos e pastas dentro do sistema de arquivos. Neste ponto, o Git não rastreia esses arquivos.
  2. Área de PreparaçãoAntes de salvar qualquer arquivo em um repositório, você deve colocá-lo em uma área de teste. É como um local temporário para seus arquivos e pastas antes do commit. Você pode adicionar ou remover arquivos facilmente de uma área de teste.Se você modificou algum arquivo e deseja adicioná-lo a uma área de teste, basta executar o comando abaixo.git add . Aqui, o ponto significa todos os arquivos que são modificados.
  3. RepositórioUm repositório mantém seus arquivos confirmados reais. Git armazena todas essas informações dentro de uma pasta oculta chamada .git. Quando você confirma algo, tudo o que estiver dentro de sua área de teste é permanentemente salvo em um repositório.Você pode pensar em um commit como um checkpoint. Então, basicamente, git compara seu checkpoint anterior com commit recente para armazenar apenas os arquivos modificados.Você pode executar o comando abaixo com uma breve mensagem sobre o que foi alterado.git commit -m "Type a brief message here regarding this commit" As mensagens de commit são realmente úteis, pois informam os outros membros da equipe sobre o que você fez no commit.

Verificar status

Git permite que você verifique facilmente quais arquivos são rastreados / não rastreados dentro de uma área de teste. Para fazer isso, você pode usar o comando abaixo.

git status

Muitas pessoas o usam com frequência para obter o status atual da área de teste.


Conecte o Repositório Local ao Servidor

Em um cenário do mundo real, você pode achar mais fácil primeiro criar um Repositório em um provedor de hospedagem Git (por exemplo, GitHub ou Bitbucket ). Em seguida, basta cloná-lo em seu computador local. O motivo é que eles configuram automaticamente o remotepara você. O que significa que seus repositórios locais e remotos estão conectados por padrão.

Mas, caso você tenha criado um repositório em seu computador local e então queira conectá-lo a um servidor. Em seguida, execute o comando abaixo.

git remote add [remote_name] [remote_url]

Você pode especificar qualquer coisa como um [remote_name]. Mas, convencionalmente, nós o chamamos de origin.

Considerando que, remote_urlé o caminho para seu repositório Git no servidor. Este URL será fornecido pelo seu provedor de hospedagem Git.

Aqui está um exemplo de como esse comando ficará em um cenário do mundo real.

git remote add origin https://github.com/twbs/bootstrap.git

No caso, você deseja verificar quantos repositórios remotos estão conectados ao seu repositório local. Basta usar o comando abaixo.

git remote -v

Enviar alterações para o servidor

Conceitos Git e fluxo de trabalho para iniciantes
Git push

Agora que você conectou seu repositório local a um remoto. É hora de enviar as alterações para o servidor. Dê uma olhada na sintaxe deste comando.

git push [remote_name] [branch_name]

Requer o nome do seu “remoto” e “ramo” onde enviará as alterações. Por padrão, temos apenas um branch que é conhecido como “master”. Você aprenderá sobre branches posteriormente neste tutorial.

Portanto, um exemplo deste comando será semelhante a este.

git push origin master

Puxe as alterações do servidor

Conceitos Git e fluxo de trabalho para iniciantes
Git pull

Caso seus colegas de equipe também estejam trabalhando no mesmo projeto e tenham enviado algumas alterações ao servidor. Você pode recuperar essas alterações usando este comando.

git pull [remote_name] [branch_name]

Por exemplo:-

git pull origin master

Por padrão, quando você executa este comando, o Git baixa os arquivos modificados e, em seguida, mescla com o seu repositório. Mas, se você apenas deseja verificar se algo foi alterado no repositório remoto ou não, use este comando.

git fetch origin master

Ramos

Conceitos Git e fluxo de trabalho para iniciantes
Modelo de ramificação Git

O modelo de ramificação Git é semelhante ao de uma árvore com ramificações. Eles são particularmente úteis quando você deseja adicionar um novo recurso ou corrigir um bug em seu projeto.

Basicamente, você cria um novo branch para testar algo separadamente. Quando seu trabalho estiver concluído, simplesmente mescle-o com seu branch principal (isto é, master). No caso de você não gostar da nova ideia, pode facilmente descartar as alterações sem afetar o projeto.

Use este comando para criar uma nova ramificação.

git branch <branch_name>

Você também pode excluir um branch usando o Git.

git branch -D <branch_name>

Para fazer qualquer alteração em um branch específico, você deve primeiro mover-se dentro dele. Para fazer isso, use este comando.

git checkout <branch_name>

Unir

Conceitos Git e fluxo de trabalho para iniciantes
Git merge

Vamos supor que você fez algumas alterações em um novo branch e deseja integrá-las ao seu masterbranch. Você pode fazer isso executando uma operação de mesclagem.

git merge <branch_name>

Em palavras simples, este comando é usado para combinar dois ramos. Se um arquivo específico for alterado em ambas as ramificações, isso criará um conflito de mesclagem. Nesse caso, você deve examinar manualmente o arquivo e selecionar a alteração desejada e remover a outra.


Conclusão

Você acabou de ver como é fácil começar a rastrear o histórico de um projeto usando Git. É uma ferramenta geralmente usada por programadores e desenvolvedores de software. Mas você não precisa saber nada sobre desenvolvimento de software para aprender o software Git.

Ele é embalado com comandos e tem uma sintaxe muito simples que qualquer pessoa pode entender.

Postado em Blog
Escreva um comentário