8221  Reviews star_rate star_rate star_rate star_rate star_half

The Git Workflow and GitOps

This Git Workflow and GitOps training course teaches attendees how to collaborate and automate workflows and processes using Git. Students learn how to use one of the many Git Repository platforms,...

Read More
Course Code GIT-104
Duration 3 days
Available Formats Classroom

This Git Workflow and GitOps training course teaches attendees how to collaborate and automate workflows and processes using Git. Students learn how to use one of the many Git Repository platforms, such as GitHub, GitLab, or Bitbucket. In addition, participants learn how to create an automated CI/CD pipeline and get the most out of GitOps. 

Skills Gained

  • Understand Git fundamentals
  • Be able to manage a local repository
  • Collaborate as a team
  • Leverage the pull/merge request workflow
  • Apply their Git knowledge to almost any Git platform (GitHub, etc)
  • Use automation best practices leveraging Git
  • Set up simple CI/CD pipelines using Git and their pre-selected Git platform

Prerequisites

No prior experience with Git is presumed. Prior experience with other version control systems is helpful but not required. Experience with the command-line or DOS command prompt is preferred. Experience with Docker and the concepts of containerization are beneficial but not required.

Course Details

Training Materials

All attendees receive comprehensive course materials.

Software Requirements

  • Git 2.x or later
  • Internet access for all attendees and the instructor

Outline

  • Introduction to Source Code Management
    • The Core Principles of Change Management
    • The Power to Undo Changes
    • Audit Trails and Investigations
    • Reproducible Software
  • Git Introduction and Basics
    • Introduction to Git
    • Trees and Commits
    • Configuring Git
    • Adding, Renaming, and Removing Files
  • Reviewing and Editing the Commit History
    • Reviewing the Commit History
    • Revision Shortcuts
    • Fixing Mistakes
  • Improving Your Daily Workflow
    • Simplifying Common Commands with Aliases
    • Ignoring Build Artifacts
    • Saving Changes for Later Use (Stashing)
  • Branching
    • Branching Basics
    • Listing Differences Between Branches
    • Visualizing Branches
    • Deleting Branches
    • Tagging
  • Merging
    • Merging Basics
    • Merge Conflicts
    • Merging Remote Branches
  • Remote Repositories
    • Remote Repositories
    • Synchronizing Objects with Remotes
    • Tracking Branches
    • Remote branch management
    • Forking and working with upstreams
  • Collaboration through a platform
    • Introduction to GitHub
    • Git Repositories on GitHub
    • Daily Workflow
    • Using pull requests and code reviews
  • History Management
    • Rebasing
    • Cherry picking
    • Squashing
    • Advanced workflows
  • Workflows and Best Practices
    • Branch strategies
    • Remote strategies
    • Tagging strategies
  • Automation with Git
    • Leveraging hooks
    • Commit templates
    • Actions and Pipelines
    • GitHub/GitLab “Pages”
  • Intro to Containerization
    • Images & Containers
    • Basics of Docker
    • Orchestration
    • Basics of Kubernetes
  • GitHub Actions (Workflows)
    • Running Tests
    • Caching and passing artifacts
    • Branch-specific tasks
    • Handling different environments
    • Runners
    • Service Containers
    • Deploying with Git
    • CI/CD with Actions
  • Infrastructure as Code
    • Declarative Infrastructure
    • Image Management
    • Storing Secrets / Environment Variables
  • GitOps
    • Intro to core concepts
      • Understanding GitOps compared to DevOps and “Infra as Code”
    • Push vs Pull based deployments
    • Operators (and Flaggers)
    • Common approaches to GitOps
  • Conclusion