Book Image

DevOps Unleashed with Git and GitHub

By : Yuki Hattori
Book Image

DevOps Unleashed with Git and GitHub

By: Yuki Hattori

Overview of this book

Git and GitHub are absolutely crucial for DevOps, playing a multifaceted role in streamlining the software development lifecycle and enabling smoother collaboration between development and operations teams. DevOps Unleashed with Git and GitHub enables you to harness the power of Git and GitHub to streamline workflows, drive collaboration, and fuel innovation. Authored by an expert from GitHub, the book starts by guiding you through Git fundamentals and delving into DevOps and the developer experience. As you progress, you’ll understand how to leverage GitHub's collaboration and automation features, and even use GitHub Copilot for enhanced productivity. You'll also learn how to bridge the DevOps gap, maintain code quality, and implement robust security measures. Additionally, hands-on exercises will equip you to elevate your developer experience, foster teamwork, and drive innovation at the speed of DevOps. By the end of this DevOps book, you’ll have mastered the Git fundamentals, conquered collaboration challenges, and unleashed the power of GitHub as you transform your DevOps workflows.
Table of Contents (14 chapters)
Free Chapter
Part 1: Foundations of Git, GitHub, and DevOps
Part 2: GitHub Excellence and CI/CD Fundamentals
Part 3: Beyond DevOps

Deployment strategies

It is important to embrace failure as a system in DevOps. In the dynamic world of DevOps, embracing failure is not just recommended; it is essential. Contrary to traditional perspectives where failure is often seen as a setback, in DevOps, failure assumes a transformative role. It is not merely an incident or an unexpected result; it is an integral part of DevOps.

In conventional deployment methodologies, extensive checks and balances are the norm, aimed at minimizing the occurrence of failure. However, the fast-paced nature of modern development such as Agile alters this approach significantly. In modern development, the landscape is ever-evolving, and services undergo constant changes. If these changes are not made swiftly and effectively, it could lead to service degradation or failure. Therefore, it becomes crucial to build a system that is resilient and can adapt to these rapid changes.

In this context, the goal is not to prevent failure outright, but...