Cover of GitHub Made Crystal Clear
← Back to the series

GitHub

Made Crystal Clear

By Christophe Paka · Updated October 31, 2026

A Visual Beginner's Guide to Git, Pull Requests, Code Review, and Actions

Prefer it on your Kindle, or on paper? Same book, on Amazon.

Give feedback

Who this book is for

In plain words: GitHub is where teams keep their code online, review each other's changes, track work, and ship software automatically.

  • Developers and students who use GitHub every day
  • Career changers starting their first projects
  • Product managers and analysts who work next to engineers
  • Not for: Not for you if you first need to understand Git itself. Try Git Made Crystal Clear.

Maybe you have tried to learn GitHub more than once, copied commands until something worked, and still could not say where your file went. This visual beginner's guide starts with one picture of git and GitHub, then walks the loop a team uses every day. Inside, you will learn to tell git from GitHub, and know where your file is at any moment with one command, git status; branch, open a pull request, merge, and settle a merge conflict without panic; write small pull requests that get a careful read, and review a fifty file change over two sittings; read a GitHub Actions workflow line by line, find why a run went red, and stop paying for minutes you did not need; switch on push protection and secret scanning, and rotate a leaked key the same day (deleting the file fixes nothing); and get your first pull request merged into a project you do not own. Fifteen chapters, 33 diagrams and 23 step by step recipes. Every idea has a diagram, every recipe is numbered with the result you should see, and every chapter ends with a Try it to check yourself. The words stay plain, and the real terms stay in. Whether you are a student, a job seeker, a developer joining a team, the person who pays for the Actions minutes, or someone who simply works next to code, one small project of your own goes from a first commit to a tagged release.

Pages
229
Level
Beginner to advanced
Updated
October 31, 2026

12 real pages. Click a page to enlarge it.

Page 7: git on your machine, GitHub as a service
Page 19: three doors into one repository
Page 26: pick the credential by the use
Page 41: a merge conflict in one block
Page 63: the Files changed tab, labeled
Page 77: the same pull request and description close issue #142 only when the base is the default branch
Page 97: the five repository roles
Page 104: the Actions object model
Page 129: from commit to release
Page 147: credential rotation: all five ways of hiding a pushed secret fail, so every road ends in rotation, and...
Page 155: fork and pull
Page 172: a README in seven blocks, in reading order, each answering one visitor question

Inside the book

  1. 01The GitHub Moment
  2. 02Your First Repository
  3. 03The GitHub Flow: Branch, Pull Request, Merge
  4. 04Pull Requests Worth Reviewing
  5. 05Reviewing Code: A Method, Not a Button Tour
  6. 06How Real Teams Work: Issues, Branches, and a Model That Fits
  7. 07Guardrails: Rulesets, Code Owners, Permissions
  8. 08GitHub Actions: From Mystery to Model
  9. 09When the Run Goes Red
  10. 10Ship It: Releases, Versions, and Pages
  11. 11Security You Already Have
  12. 12Your First Contribution to Someone Else's Project
  13. 13Your Profile in Sixty Seconds
  14. 14What GitHub Costs, and What Happens When It Goes Down
  15. 15The Cheat Sheet and Your Ninety Days

You'll leave with

  • Tell git from GitHub, and know where your file is at any moment with one command, git status
  • Branch, open a pull request, merge, and settle a merge conflict without panic
  • Write small pull requests that get a careful read, and review a fifty file change over two sittings
Christophe Paka, author of GitHub Made Crystal Clear

About the author

Christophe Paka writes every book on the shelf. He spent years in technical support at Salesforce and Microsoft, where the job was to make complex systems clear to customers who needed them working the same day. He has since built and run software as a founder and lead developer, worked as a Salesforce consultant, and grown a YouTube channel on tech careers past one million views.

This book was last updated on October 31, 2026.

Connect on LinkedIn →

For teams

Put GitHub on every desk at your company.

One licence, every book in the series, one link for everyone. From $250 a year.

See the team licences

Sources

Every source cited in GitHub Made Crystal Clear. Each number matches the [n] marker next to that link in the book's "Go deeper" lists, so you can trace any claim back to its origin.

  1. [1]About GitHub and Git (GitHub Docs)
  2. [2]About Git (GitHub Docs)
  3. [3]Hello World (GitHub Docs)
  4. [4]GitHub flow (GitHub Docs)
  5. [5]About repositories (GitHub Docs)
  6. [6]About large files on GitHub (GitHub Docs)
  7. [7]About authentication to GitHub (GitHub Docs)
  8. [8]About GitHub (github.com)
Show all 194 sources
  1. [9]Creating an account on GitHub
  2. [10]About two-factor authentication
  3. [11]Generating a new SSH key and adding it to the ssh-agent
  4. [12]Set up Git
  5. [13]About READMEs
  6. [14]Basic writing and formatting syntax
  7. [15]Licensing a repository
  8. [16]About pull requests
  9. [17]About branches
  10. [18]About pull request merges
  11. [19]About merge conflicts
  12. [20]Resolving a merge conflict using the command line
  13. [21]Small CLs (Google Engineering Practices)
  14. [22]Speed of code reviews (Google Engineering Practices)
  15. [23]Best practices for peer code review (SmartBear, reporting the Cisco Systems study)
  16. [24]Linking a pull request to an issue (GitHub Docs)
  17. [25]About pull request reviews (GitHub Docs)
  18. [26]Do Small Code Changes Merge Faster? A Multi-Language Empirical Investigation
  19. [27]DORA: the four keys
  20. [28]gh pr create (GitHub CLI manual)
  21. [29]Filtering files in a pull request (GitHub Docs)
  22. [30]Managing a branch protection rule (GitHub Docs)
  23. [31]The standard of code review (Google Engineering Practices)
  24. [32]Using Copilot code review (GitHub Docs)
  25. [33]Copilot code review concepts (GitHub Docs)
  26. [34]Announcing the 2024 DORA report (Google Cloud)
  27. [35]About issues (GitHub Docs)
  28. [36]Setting guidelines for repository contributors (GitHub Docs)
  29. [37]Syntax for issue forms (GitHub Docs)
  30. [38]About Projects (GitHub Docs)
  31. [39]About teams (GitHub Docs)
  32. [40]Configuring notifications (GitHub Docs)
  33. [41]Showing your private contributions and achievements (GitHub Docs)
  34. [42]About protected branches
  35. [43]About rulesets
  36. [44]About code owners
  37. [45]Repository roles for an organization
  38. [46]GitHub's plans
  39. [47]GitHub pricing
  40. [48]GitHub Flow (Scott Chacon, 2011)
  41. [49]A successful Git branching model (Vincent Driessen, 2010)
  42. [50]Trunk Based Development
  43. [51]DORA capability: trunk-based development
  44. [52]DORA capability: continuous delivery
  45. [53]Continuous Integration (Martin Fowler, revised 18 January 2024)
  46. [54]Understanding GitHub Actions
  47. [55]Quickstart for GitHub Actions
  48. [56]Events that trigger workflows
  49. [57]Workflow syntax for GitHub Actions
  50. [58]Running variations of jobs in a workflow
  51. [59]Dependency caching reference
  52. [60]Using secrets in GitHub Actions
  53. [61]Automatic token authentication
  54. [62]GitHub Actions limits
  55. [63]GitHub Status
  56. [64]GitHub Status incident history
  57. [65]GitHub-hosted runners reference (GitHub docs)
  58. [66]Billing for GitHub Actions (GitHub docs)
  59. [67]Actions runner pricing (GitHub docs)
  60. [68]Understanding and Detecting Flaky Builds in GitHub Actions
  61. [69]About releases (GitHub Docs)
  62. [70]Semantic Versioning 2.0.0
  63. [71]Conventional Commits 1.0.0
  64. [72]How to Write a Git Commit Message (Chris Beams)
  65. [73]Deployments and environments (GitHub Docs)
  66. [74]What is GitHub Pages? (GitHub Docs)
  67. [75]Using custom workflows with GitHub Pages (GitHub Docs)
  68. [76]Introduction to GitHub Packages (GitHub Docs)
  69. [77]GitHub security features
  70. [78]About the dependency graph
  71. [79]About Dependabot alerts
  72. [80]About Dependabot version updates
  73. [81]About secret scanning
  74. [82]About push protection
  75. [83]About forks
  76. [84]About code scanning with CodeQL
  77. [85]Billing for GitHub Advanced Security
  78. [86]Open Source Guides: How to Contribute
  79. [87]Open Source Guides: Best Practices for Maintainers
  80. [88]Searching for repositories (GitHub Docs)
  81. [89]AI Policy, Disclosure, and Human in the Loop: How Are Contribution Guidelines Adapting to GenAI?
  82. [90]Open source AI contribution policies (melissawm)
  83. [91]About GitHub CLI (GitHub Docs)
  84. [92]About your profile (GitHub Docs)
  85. [93]Pinning items to your profile (GitHub Docs)
  86. [94]Using your GitHub profile to enhance your resume (GitHub Docs)
  87. [95]Saving repositories with stars (GitHub Docs)
  88. [96]Understanding GitHub code search syntax (GitHub Docs)
  89. [97]GitHub Actions pricing calculator
  90. [98]GitHub security plans
  91. [99]GitHub Copilot plans (GitHub Docs)
  92. [100]State of CI/CD Report (CD Foundation and SlashData)
  93. [101]GitHub (Wikipedia)
  94. [102]Octoverse 2024 (GitHub blog)
  95. [103]The August 17 outage, and the work ahead (GitHub blog)
  96. [104]2026 pricing changes for GitHub Actions (GitHub)
  97. [105]Ubuntu 26 generally available and latest migration (GitHub Changelog)
  98. [106]Node 20 is no longer available in GitHub Actions (GitHub Changelog)
  99. [107]actions/checkout releases
  100. [108]actions/deploy-pages releases
  101. [109]GitHub Actions: macOS 14 runner image retirement (GitHub Changelog)
  102. [110]Re-running workflows and jobs (GitHub Docs)
  103. [111]Removing workflow artifacts (GitHub Docs)
  104. [112]Workflow execution protections in GitHub Actions generally available (GitHub Changelog)
  105. [113]GitHub Codespaces billing (GitHub Docs)
  106. [114]Git LFS billing (GitHub Docs)
  107. [115]About mandatory two-factor authentication (GitHub Docs)
  108. [116]Security improvements for SSH (GitHub Changelog)
  109. [117]Deleted or missing SSH keys (GitHub Docs)
  110. [118]Some Git over HTTPS may temporarily require authentication (GitHub Changelog)
  111. [119]Stacked pull requests generally available (GitHub Changelog)
  112. [120]Set pull request limits at the organization level (GitHub Changelog)
  113. [121]Draft pull requests count toward pull request limits (GitHub Changelog)
  114. [122]Automatically migrate branch protection rules to repository rulesets (GitHub Changelog)
  115. [123]Copilot code review: API support and new default effort level (GitHub Changelog)
  116. [124]Copilot code review: New organization billing options and controls (GitHub Changelog)
  117. [125]Using GitHub Copilot code review (GitHub Docs)
  118. [126]Upcoming changes to GitHub Copilot policies and billing (GitHub Changelog)
  119. [127]About Copilot cloud agent (GitHub Docs)
  120. [128]GitHub Advanced Security trials for GitHub Team (GitHub Changelog)
  121. [129]AI Scan for pull requests generally available (GitHub Changelog)
  122. [130]Block pull requests with exposed secrets from merging (GitHub Changelog)
  123. [131]Secret scanning blocks Anthropic keys by default, adds Salesforce (GitHub Changelog)
  124. [132]About GitHub code search (GitHub Docs)
  125. [133]Pinning items to your profile (GitHub Docs)
  126. [134]Setting your profile to private (GitHub Docs)
  127. [135]Profiles now show your highest achievement badge tier (GitHub Changelog)
  128. [136]DORA research (dora.dev)
  129. [137]git-status documentation (git-scm.com)
  130. [138]Test runner (Node.js documentation)
  131. [139]Recovering your account if you lose your 2FA credentials (GitHub Docs)
  132. [140]Creating a new repository (GitHub Docs)
  133. [141]scripts (npm Docs)
  134. [142]gh auth login (GitHub CLI manual)
  135. [143]Ignoring files (GitHub Docs)
  136. [144]Managing your personal access tokens (GitHub Docs)
  137. [145]Managing remote repositories (GitHub Docs)
  138. [146]Agent Merge watches and fixes pull requests in the cloud (GitHub Changelog)
  139. [147]git-merge documentation (git-scm.com)
  140. [148]Reverting a pull request (GitHub Docs)
  141. [149]git-revert documentation (git-scm.com)
  142. [150]About stacked pull requests (GitHub Docs)
  143. [151]Stacked pull requests CLI commands reference (GitHub Docs)
  144. [152]Copilot code review: merge with confidence with Max and approvals (GitHub Changelog)
  145. [153]Managing labels (GitHub Docs)
  146. [154]npm ci (npm Docs)
  147. [155]package-lock.json (npm Docs)
  148. [156]Creating rulesets for a repository (GitHub Docs)
  149. [157]Available rules for rulesets (GitHub Docs)
  150. [158]GitHub Actions workflow lockfiles are generally available (GitHub Changelog)
  151. [159]Bulk migrate branch protections to rulesets for a repository (GitHub Changelog)
  152. [160]Creating rulesets for a repository, Enterprise Cloud edition (GitHub Docs)
  153. [161]Approving a pull request with required reviews (GitHub Docs)
  154. [162]Troubleshooting rules (GitHub Docs)
  155. [163]Secure use reference (GitHub Docs)
  156. [164]Troubleshooting the REST API (GitHub Docs)
  157. [165]Enabling debug logging (GitHub Docs)
  158. [166]Automatically generated release notes (GitHub Docs)
  159. [167]Managing releases in a repository (GitHub Docs)
  160. [168]Immutable releases (GitHub Docs)
  161. [169]Preventing changes to your releases (GitHub Docs)
  162. [170]GitHub Pages limits (GitHub Docs)
  163. [171]Optimizing the creation of pull requests for Dependabot version updates (GitHub Docs)
  164. [172]Quickstart for securing your repository (GitHub Docs)
  165. [173]Removing sensitive data from a repository (GitHub Docs)
  166. [174]Working with push protection from the command line (GitHub Docs)
  167. [175]AI Scan for repositories in public preview (GitHub Changelog)
  168. [176]Push protection beyond predefined secret patterns (GitHub Changelog)
  169. [177]Pull request limits: exempt contributors by age or history (GitHub Changelog)
  170. [178]Syncing a fork (GitHub Docs)
  171. [179]Profile reference (GitHub Docs)
  172. [180]Profile contributions reference (GitHub Docs)
  173. [181]About discussions (GitHub Docs)
  174. [182]About the REST API (GitHub Docs)
  175. [183]About creating GitHub Apps (GitHub Docs)
  176. [184]GitHub Copilot is moving to usage-based billing (GitHub Changelog)
  177. [185]Updates to GitHub Copilot interaction data usage policy (GitHub blog)
  178. [186]GitHub Packages billing (GitHub Docs)
  179. [187]Budgets and alerts (GitHub Docs)
  180. [188]git clone (Git documentation)
  181. [189]Duplicating a repository (GitHub Docs)
  182. [190]GitHub Actions adds multi cloud compute to improve reliability (GitHub Changelog)
  183. [191]About repository security advisories (GitHub Docs)
  184. [192]GitHub Enterprise now includes access to GitHub Copilot (GitHub Changelog)
  185. [193]git-rebase documentation (git-scm.com)
  186. [194]git-push documentation (git-scm.com)

New books, in your inbox

One short note when a new Made Crystal Clear guide ships.
No spam, unsubscribe anytime.