Introdução ao controle de versão com Git

O software está devorando o mundo em todos os sentidos possíveis. Conforme a tecnologia avança e nós progredimos lentamente para o mundo controlado pela IA, os empregos no setor de tecnologia terão um pico. Escrever software é uma habilidade que pode ser autodidata e bastante fácil, pelo menos no mundo de hoje, com a internet literalmente transbordando de recursos semelhantes. Mas, como desenvolvedor de software, escrever código não é tudo o que se espera de você. Você precisa aprender a arte sutil de gerenciar a base de código de sua empresa à medida que eles aumentam e introduzem mais recursos. Pessoas que já escreveram software antes sabem que manter a base de código é tão importante quanto escrever código com desempenho e pronto para produção.

Version Control

A pergunta óbvia que pode ter vindo à sua mente depois de ler a introdução seria: como alguém gerencia sua base de código? A resposta hoje seria sistemas de controle de versão. Controle de versão ou VCS, como é popularmente conhecido como um sistema de software que gerencia e rastreia alterações em um arquivo específico ou um conjunto de arquivos e permite que você volte facilmente no tempo para desfazer quaisquer alterações desnecessárias que você possa ter feito.

Como um iniciante, aprender a codificar já pode parecer bastante opressor para você e, além disso, adicionar a responsabilidade de gerenciar o código a si mesmo, certamente parece uma tarefa gigantesca agora, não é? Bem, você não precisa se preocupar. Neste artigo, vou percorrer um procedimento passo a passo para gerenciar sua base de código em um sistema de controle de versão e, ao mesmo tempo, explicar por que é uma habilidade importante de aprender.

Na comunidade de desenvolvedores, Git é o VCS mais popular disponível, portanto, basearemos este artigo no Git. Junto com o Git, eu também daria a você uma breve introdução ao GitHub, que é um serviço de hospedagem de repositório de controle de versão.

Linus Torvalds, o pai do Kernel do Linux, ao desenvolver o mesmo se deparou com uma situação em que não conseguia mais gerenciar adequadamente o código que estava escrevendo no momento em que estava usando o BitKeeper. Então, ele fez um pequeno desvio para desenvolver o Git e torná-lo público no ano de 2005. O design do Git foi fortemente baseado no BitKeeper. O nome “git” foi dado por Linus Torvalds quando ele escreveu a primeira versão. Ele descreveu a ferramenta como “o rastreador de conteúdo estúpido”.

Por que todo desenvolvedor precisa aprender a usar o VCS?

Os sistemas de software tradicionais são compostos por vários arquivos, espalhados por vários diretórios e, em uma empresa típica, há vários desenvolvedores gravando alterações na pilha de software ao mesmo tempo. É muito importante que todos os desenvolvedores se mantenham o mais produtivos possível, mas, ao mesmo tempo, é igualmente importante manter a equipe inteira na mesma página. O que significa que cada pessoa da equipe deve saber exatamente quais recursos estão sendo desenvolvidos. Outra coisa importante a se ter em mente ao desenvolver software é o fato de que o trabalho de uma pessoa não deve afetar o trabalho de outra pessoa da mesma equipe. Em termos leigos, o que quero dizer é que se você, como desenvolvedor, estiver trabalhando em um recurso, isso não deve atrapalhar o fluxo de trabalho de nenhum de seus colegas de equipe conforme você grava alterações na base de código. Todos esses casos são tratados de maneira muito elegante com o VCS. Ele não apenas torna a vida dos desenvolvedores mais fácil, mantendo o controle das mudanças feitas por cada indivíduo na equipe, mas também mantém um histórico de versão em um formato simples para que qualquer mudança acidental na base de código possa ser facilmente evitada.

Existem muitos sistemas de controle de versão disponíveis no mercado como Subversion, Mercurial etc, mas a razão pela qual estamos nos concentrando no Git é que ele é de longe a opção mais popular disponível.

instalação

A configuração do git é diferente dependendo do sistema operacional em que você está. Orientarei você no processo de configuração no macOS, Linux e Windows.

MacOS

Instalar o Git é bastante fácil no Mac, primeiro certifique-se de ter instalado o brew, o gerenciador de pacotes popular para Mac. Assim que a mistura estiver preparada (o que, honestamente, leva apenas alguns minutos, dependendo da velocidade da sua internet) você só precisa emitir o seguinte comando:

  • brew instalar git

Linux

O processo de instalação no Linux também é bastante semelhante ao macOS. Abra o terminal e emita o seguinte comando:

  • sudo apt-get install git

Windows

O processo de instalação no Windows é um pouco diferente. No Windows, você precisa baixar um instalador. Vá para este link para baixar o instalador mais recente e, em seguida, execute o instalador para instalar o git em sua máquina Windows.

Iniciando

Agora que você configurou o sistema. Você precisa inicializar um repositório git. O que é um repositório, você pergunta? É a pasta / diretório em que todos os arquivos do seu projeto são armazenados. Aqui estão as etapas para inicializar um repositório git.

  • Inicie o Terminal / Prompt de Comando em sua máquina.
  • Navegue até o diretório do projeto que contém todos os arquivos do projeto. (Isso geralmente é feito usando o comando cd em todas as plataformas)
  • agora que você está dentro do diretório do seu projeto, emita o seguinte comando: git init

Git Inicialização

Agora que você inicializou seu repositório git, git sabe que precisa rastrear as alterações em todos os arquivos do diretório. O Git agora saberá sempre que você adicionar ou remover qualquer arquivo no diretório do projeto ou fizer qualquer alteração.

Fazendo alterações e emitindo seu primeiro compromisso

A parte mais importante sobre qualquer VCS é rastrear as alterações. Sempre que você emitir uma alteração no diretório do projeto, isso será refletido no status do repositório. Vá em frente e adicione um arquivo ao diretório ou faça uma alteração em um arquivo existente. Depois de fazer isso, você não pode emitir o seguinte comando para verificar o status do arquivo no repositório.

  • status git

Git SatusGenericName

Como você pode ver, git diz que há um arquivo não rastreado. Agora precisamos adicionar o arquivo não rastreado à área de teste do git. Você pode pensar na área de teste como o estágio intermediário antes que uma mudança seja finalizada. Para adicionar o arquivo à área de teste, emita o seguinte comando:

  • adicionar

Ao emitir o comando git add, você pode emitir novamente um comando de status para ver o status do arquivo.

Agora que o arquivo foi adicionado à área de teste, é hora de finalizar sua alteração com uma mensagem de confirmação. Emita o seguinte comando:

  • git commit - m “YOUR_MESSAGE”

Substitua a parte sob as aspas por sua própria mensagem personalizada. Agora, verifique seu repositório com um status git. Você notará que o commit foi bem sucedido.

Commit Git

Ramificação

Ramificação é um tópico chave no sistema de controle de versão. É muito importante separar suas partes estáveis ​​(coisas que estão funcionando perfeitamente bem e foram testadas) do projeto das partes atualmente em desenvolvimento. É importante porque você precisa se certificar de que as pessoas que usam o seu software não são afetadas pelas alterações feitas ao adicionar um novo recurso. É aqui que eu imagino a ramificação. Isso ajuda a segregar sua base de código em diferentes caixas de proteção, de modo que suas partes de trabalho não sejam afetadas por nenhuma alteração feita nas outras partes.

Criar um branch usando Git é bastante simples. Basta emitir o seguinte comandante

  • git checkout -b “BRANCH_NAME”

Depois de fazer isso, você pode verificar em qual branch está, emitindo o seguinte comando:

  • ramo git

ramo git

Compartilhando seu código no GitHub

Você aprendeu com sucesso os fundamentos do controle de versão usando git. Agora é a hora de tornar seu projeto público, compartilhando-o com a comunidade de desenvolvedores. Este é o primeiro passo para o desenvolvimento de software de código aberto. Abrir o código do seu código significa marcá-lo como público para que outras pessoas possam vê-lo, contribuir para o seu desenvolvimento e, se necessário, adaptá-lo aos seus próprios projetos.

github

 

Certifique-se de ter uma conta GitHub antes de continuar.

Depois de se inscrever. Vá em frente e crie um repositório no GitHub conforme mostrado na captura de tela abaixo.

Adicionar GitHub

 

Depois de criar o repositório. As etapas adicionais serão mostradas para orientá-lo a trazer seu projeto para o GitHub.

Instrução GitHub

Uma vez que você já criou um repositório. Você só precisa empurrar. Emita o seguinte comando para fazer isso.

  • git remoto adicionar origem REMOTE_URLgit push -u mestre de origem

Depois de fazer isso, você pode visitar a URL remota para verificar seus projetos. Outros membros da comunidade podem contribuir com seus projetos, emitindo mudanças.

Conclusão

Parabéns. Agora você está um passo mais perto de criar a próxima grande novidade da tecnologia. E tenho certeza de que, ao fazer isso, você também aplicará os conceitos úteis de controle de versão que este artigo lhe ensinou. Grandes empresas como IBM, Google etc têm enormes portfólios de serviços que estão constantemente evoluindo com tecnologias e recursos de ponta e a única maneira de gerenciar um conjunto tão grande de produtos, cada um escalando para vários milhões de linhas de código, é por meio do controle de versões sistemas. As próprias empresas têm sua solução interna para VCS ou contam com VCS populares como Git ou Subversion. A maioria dos projetos teóricos de código aberto estão disponíveis publicamente no GitHub. Certamente é uma habilidade importante para dominar e saber como gerenciar grandes bases de código mudará efetivamente a maneira como você trabalha e aumentará sua credibilidade também.

Aishwar Babber

Aishwar Babber é um blogueiro apaixonado e um profissional de marketing digital. Ele adora falar e blogar sobre as últimas tecnologias e gadgets, o que o motiva a correr GizmoBaseName. Atualmente, ele está praticando sua experiência em marketing digital, SEO e SMO como profissional de marketing em tempo integral em vários projetos. Ele é um investidor ativo em AfiliadoBay e diretor no ImageStation.

Deixe um comentário