Categorias
Ciência de Dados Git

Comandos no Git que todo Cientista de Dados precisa saber

Nesse artigo, você vai conhecer os principais conceitos e comandos para utilizar a ferramenta Git nos seus projetos de Data Science, desde a criação de um novo repositório local até os conceitos mais avançados como branchs e merge, que facilitam o trabalho em equipe em um ambiente remoto e colaborativo.

O que é e para que serve?

O Git é uma ferramenta que não pode faltar na formação de um Cientista de Dados, porque permite o controle de versionamento de códigos, organiza as alterações realizadas ao longo do projeto, permite fazer um push e um pull dessas alterações e continuar o desenvolvimento do projeto, com as suas melhorias implementadas.

O ideia do Git é fornecer um repositório local para armazenar o projeto, que pode funcionar offline para um trabalho mais individual e além disso facilita o compartilhamento das alterações do projeto para um trabalho em equipe, organizado em ambiente remoto.

O Git apresenta muitas facilidades que o tornam uma ferramenta indispensável:

  • Segurança e facilidade no controle de versões do Projeto.
  • Construção de branches, que são ambientes seguros para desenvolver e testar, sem impactar no que já está em produção funcionando.
  • É possível ignorar alguns arquivos, através da utilização do .gitignore, para filtrar os arquivos que não fazem parte do código-fonte do projeto.
  • Operações rápidas e fáceis.
  • Capacidade para adicionar ou mover arquivos.
  • É possível entender o histórico das modificações realizadas.
Conhecendo a área de trabalho do Git
  • Staging: onde ficam todos os arquivos alterados e que foram marcados como prontos para terem o seu estado salvo, com um commit. Utilizamos o comando git add <nome_arquivo> para enviar um arquivo para a Staging Area.
  • Repository: área onde ficam todos os arquivos versionados pelo Git, que foram salvos com o comando git commit.
  • Working Directory: área onde ficam todos os arquivos que foram alterados (saíram da área Repository), mas ainda não foram marcados como prontos para serem commitados. Utiliza-se o comando git restore<nome_arquivo> para remover o arquivo de dentro da Working Directory e retornar ao último estado salvo no Repository (a funcionalidade deste comando é desfazer as alterações e voltar para o Repository ).
Alguns comandos essenciais no Git que você não pode deixar de conhecer
Comandos para a visualização do histórico e alteração de commits
Comandos para alteração de commits anteriores
Comandos de recuperação de arquivos deletados
Comandos para trabalhar em equipe em um ambiente remoto – GitHub
Trabalhando com Branchs

A branch permite modificar os códigos de um projeto, sem alterar o que já está funcionando, promovendo a independência no desenvolvimento para testar e alterar antes de enviar para o ambiente de produção. Assim, a equipe pode produzir de forma independente, com mais segurança no projeto, minimizando os conflitos de merge.

Comandos para criar e mover Branchs
Realização do merge

O merge é a união de commits e é muito utilizado quando trabalha-se com branch.

O Git não consegue resolver automaticamente quando ocorre o conflito de merge, ou seja, alterações no mesmo arquivo e/ou linhas de código.

Esses conflitos podem acontecer tanto na união entre branchs quanto entre commits.

Para utilizar o comando git merge, tem-se que estar na branch que irá receber as alterações.

No Diagrama abaixo, observa-se que os dois primeiros commits são feitos na Branch main. Quando a Branch develop for criada, uma cópia do projeto será adicionada à ela. E, esta versão do projeto, após suas alterações, retorna através de um merge para a Branch main, atualizando a sua versão.

Exemplo de Diagrama de Histórico de alterações do Git
Comandos para identificar o conflito de merge dentro do Jupyter Notebook

O Jupyter Notebook é “por baixo dos panos” um arquivo json, o que dificulta bastante na hora de identificar onde está acontecendo o problema.

Para visualizar o arquivo fonte, dentro do Jupyter Notebook e identificar onde aconteceu o conflito de merge, utiliza-se o
Reopen Editor With -> text editor.

Quando ocorre o erro no merge no Jupyter, é mais assertivo desfazer o processo. E para auxiliar na identificação do problema, é possível utilizar o pacote nbdime.

Agora, você é capaz de utilizar a ferramenta Git para desenvolver os seus projetos em Data Science, otimizando o versionamento de códigos de maneira segura, eficiente e organizada.

Se você ficou com alguma dúvida sobre algum conceito importante como branch e head, pode visitar um pequeno post que elaborei no formato de um glossário, trazendo o significado de algumas palavras-chave dentro do Git. Pode ser encontrado neste link:

Finalizando, agradeço o seu tempo dedicado à leitura deste artigo, espero ter contribuído de alguma forma e nos encontramos novamente na leitura de futuros artigos.

Conceitos essenciais no Git – My Blog (merazzi.com.br)

Meus contatos:

github.com/denisemerazzi
www.linkedin.com/in/denisewmerazzi/

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *