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 Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Ansible Overview of Ansible architecture

16h

Curso Virtual Kubelet with AWS Fargate

24 horas

Curso Python Logic and Algorithms

24 horas

Curso Object-Oriented Programming with Python

24 horas

Curso Python Data Structures and Collections

24 horas

Curso Virtual Kubelet Architecture and Providers

24 horas