Version Control with Git and GitHub

Developing software in a team without some form of version control is chaotic, confusing, and leads to inevitable human mistakes.

This workshop is geared towards software engineering and data engineering teams who have the need to work collaboratively on code projects and wish to use industry best-practices around code versioning and source control.

Although GitHub is used by default in this workshop, this can be changed to any major provider as required.

Agenda

This workshop will be a hands-on exploration of Git and GitHub by an industry expert. The workshop facilitator will use live-coding to demonstrate the process of going from nothing to a fully configured GitHub repository, including a branching strategy and best-practices when it comes to managing pull requests. The workshop is three hours in duration.

Key Focus Areas

  • Introduction and justification for version control systems
  • Comparison of version control systems and why Git is a go-to standard
  • Installation of Git on Windows, Mac, and Linux
  • Creating repositories
  • Creating branches and checking in code
  • Creating and reviewing pull requests/merge requests
  • Dealing with code conflicts
  • Advanced usage
    • Brief introduction to Git Large File Storage (Git LFS)
    • Brief introduction to GitHub Actions
    • Different branching strategies and their pros and cons

Outcome

At the end of this workshop the attendees will have a solid grasp of both the theory and practice of code source control, and be able to apply the knowledge to projects in their organisation. Attendees will be empowered to version control their code projects to eliminate reliance on manual code conflict resolution, meaning faster time-to-market and better developer experience.