Curso Git for Distributed Software Development

  • DevOps | CI | CD | Kubernetes | Web3

Curso Git for Distributed Software Development

16 horas
Visão Geral

O curso Git for Distributed Software Development fornece uma compreensão completa e prática do Git, a principal ferramenta de controle de versão distribuído utilizada em projetos de software no mundo todo.

Durante o curso, os participantes aprenderão desde os fundamentos até práticas avançadas de colaboração em projetos distribuídos, incluindo branching strategies, pull requests, integração com plataformas como GitHub, GitLab e Bitbucket, além de boas práticas para equipes de desenvolvimento ágeis e distribuídas.

Objetivo

Após realizar este curso Git for Distributed Software Development, você será capaz de:

  • Compreender os fundamentos do controle de versão distribuído.
  • Utilizar comandos essenciais e avançados do Git.
  • Colaborar de forma eficiente em projetos de software distribuídos.
  • Aplicar estratégias de branching e fluxo de trabalho (Git Flow, GitHub Flow, trunk-based).
  • Integrar Git a pipelines CI/CD em ambientes de desenvolvimento modernos.
Publico Alvo
  • Desenvolvedores de software que desejam dominar Git.
  • Engenheiros de DevOps e profissionais de integração contínua.
  • Times de desenvolvimento distribuídos ou remotos.
  • Estudantes e profissionais que buscam capacitação em controle de versão moderno.
Pre-Requisitos
  • Conhecimentos básicos em desenvolvimento de software.
  • Familiaridade com linha de comando.
  • Noções de colaboração em equipe em projetos de software (desejável, mas não obrigatório).
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico

Módulo 1: Introdução ao Git e Controle de Versão

  1. O que é controle de versão e por que usá-lo
  2. Git vs. sistemas centralizados (SVN, CVS)
  3. Conceitos fundamentais: snapshots, commits, branches
  4. Configuração inicial do Git

Módulo 2: Comandos Essenciais do Git

  1. Criando repositórios (local e remoto)
  2. Adicionando e confirmando mudanças (add, commit, status, log)
  3. Navegando no histórico de commits
  4. Trabalhando com arquivos (undo, restore, reset)

Módulo 3: Colaboração em Projetos Distribuídos

  1. Clonando e sincronizando repositórios (clone, fetch, pull, push)
  2. Trabalhando com branches (branch, checkout, switch)
  3. Mesclagem de branches (merge, rebase)
  4. Resolvendo conflitos de merge

Módulo 4: Estratégias de Branching e Fluxos de Trabalho

  1. Git Flow
  2. GitHub Flow
  3. Trunk-based development
  4. Melhores práticas para equipes distribuídas

Módulo 5: Recursos Avançados do Git

  1. Stashing, tagging e cherry-pick
  2. Reflog e recuperação de commits perdidos
  3. Submódulos e repositórios monorepo
  4. Hooks no Git

Módulo 6: Integração com Plataformas e DevOps

  1. Trabalhando com GitHub, GitLab e Bitbucket
  2. Pull Requests e Code Reviews
  3. Integração com CI/CD (ex.: GitHub Actions, GitLab CI)
  4. Automação de pipelines usando Git

Módulo 7: Observabilidade, Segurança e Boas Práticas

  1. Assinatura de commits (GPG e SSH)
  2. Proteção de branches e workflows de aprovação
  3. Gerenciamento de credenciais com Git Credential Manager
  4. Boas práticas em projetos open-source e corporativos

Módulo 8: Laboratórios Práticos

  1. Criando e configurando um repositório Git do zero
  2. Colaboração com múltiplos desenvolvedores em um projeto distribuído
  3. Implementando Git Flow em um time ágil
  4. Integração de Git com pipeline de CI/CD
TENHO INTERESSE

Cursos Relacionados

Curso Ansible Red Hat Basics Automation Technical Foundation

16 horas

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Curso Ansible Linux Automation with Ansible

24 horas

Ansible Overview of Ansible architecture

16h

Advanced Automation: Ansible Best Practices

32h