Git Course: Introduction
Data analysis and analytics. Uncover insights and transform your organisation.
In today’s software-driven world, development and version control have become fundamental skills for anyone writing computer programs. Git, a powerful tool for accomplishing these tasks, has taken centre stage in every programmer’s toolkit. In this course, you will learn how to leverage Git to:
1. track code version history: safeguard your work by maintaining a version history of code and other files
2. seamlessly integrate into larger code bases: understand branching, merging, and pull requests to collaborate effectively with other developers
3. collaborate with precision: work harmoniously with fellow programmers, developers, and analysts.
This introductory course will be guided by the GitHub.com interface, which encompasses both desktop and web portal applications. The material serves as an introduction to Git. While some basic programming experience is required, prior knowledge of specific programming languages is not. Whether you’re a seasoned developer or just starting your coding journey, mastering Git will empower you to effectively contribute to software projects.
Aims
The aim of this course is to give you confidence using git version control software. By the end of this course, you should be able to comfortably work with code in Git repositories.
Outcomes
By the end of this course, you should be able to:
- explain what git version control is and its advantages
- comfortably use the github.com interface
- set-up a repository in github.com
- review changes in code history
- differentiate between local and remote repositories
- define and use git terms such as cloning, forking, commit, add, push, pull, merge
- create and work in new branches
- clone and push/pull data from remote to local repositories
- use both Command Line Interface (CLI) and Desktop Git interfaces.
Content
Software
- Github.com
- Command Line Interface (CLI)
- Desktop software
Theory/Concepts
- Repository
- Local vs remote (origin)
- Main vs branch
Git actions
- Clone/fork/new branches
- Add/stage/commit
- Push/pull (fetch and merge)
Review
- Commit history
- Diff
- Pull Requests (via github.com)
- Merge conflicts
Intended audience
This course adopts a practical, career-oriented approach. It is tailored for coders who regularly write and develop code but are new to git software, and for managers overseeing such teams. It is not suitable for those new to computer programming.
Prerequisites
The course uses the R Programming Language as a simple language to illustrate examples. It is assumed you have completed the R Programming Course: Introduction or Python Programming Course: Level 1a, or have equivalent programming knowledge.
Delivery style
This programming course is an interactive workshop which includes lectures and demonstrations, individual exercises and discussion.
Delivery mode
- Face-to-face, presenter-taught training using your own device
- Online training via the platform Zoom
Materials
All course materials are provided electronically (via Dropbox). Printing services are not provided.
Before the course
Please sign up for a free git account at www.github.com, and download the following software prior to class:
- Git for Windows (for Windows users only)
- Both R and RStudio