Git, GitHub and Bitbucket for Beginners
Git, GitHub and Bitbucket for Beginners is a first course in version control with Git, from installing it, recording and reviewing history and undoing changes safely to branching, resolving conflicts and connecting to GitHub and Bitbucket with SSH or tokens to work as a team through pull requests. It suits students, teachers, IT staff and system administrators who are new to Git.
- Duration12 hours · 2 days
- FormatOnsite / live online
- Next roundOn request
- CertificateIncluded
Course overview
Software, websites, admin scripts and even documents edited by several people all need a way to keep a history of changes, go back to an earlier version and combine everyone's work without overwriting each other. Git is the industry-standard version control tool, and GitHub and Bitbucket are the services teams use to store and review work together. Used the wrong way, they lead to lost work, conflicts nobody knows how to fix, or passwords and secrets leaking into a repository.
This course takes beginners through current Git from scratch. Learners install and configure it on Windows or macOS, use VS Code as the editor and the diff and merge tool, record work with add and commit, review history, undo changes safely with restore and revert, branch and resolve conflicts. They then connect to GitHub over HTTPS and SSH, work as a team through pull requests and use Bitbucket Cloud with the API tokens that replaced app passwords, before finishing with a team project workshop that runs from creating a repository to merging the finished work. (2 days, 6 hours per day, 12 hours in total, Beginner level.)
What you’ll gain
- Understand version control and how Git, GitHub and Bitbucket differ
- Install and configure Git, with VS Code as the editor and the diff and merge tool
- Record, review, compare and undo work safely with current Git commands
- Create branches, merge work and resolve merge conflicts on your own
- Connect to GitHub and Bitbucket over HTTPS and SSH, and push and pull work with a team
- Work as a team with pull requests and code review
Who this course is for
- Students and new programmers who want to keep their work organised
- Teachers, lecturers and trainers who use GitHub for teaching or assignments
- IT staff and system administrators who keep scripts and configuration files under version control
- Teams starting to use GitHub or Bitbucket together for the first time
Prerequisites
- Confident use of a computer running Windows or macOS
- Able to install software and manage files and folders
- Able to search for information online; no programming experience is needed
- An email address for free GitHub and Atlassian (Bitbucket) accounts
Curriculum
Course Details
This course is the 2026 edition of Git GitHub and Bitbucket for Beginner, rewritten for current Git and for the way GitHub and Bitbucket Cloud handle authentication today. It runs for 2 days, 6 hours per day (12 hours in total, 09:00-16:00), as lectures with a lab in every topic. Beginner level. Day 1 uses Git on your own machine, from installation, recording work, reviewing history and undoing changes to branching and resolving conflicts in VS Code. Day 2 connects to GitHub and Bitbucket Cloud over HTTPS and SSH, uses pull requests for teamwork and ends with a team project workshop. Learners use their own free GitHub and Bitbucket accounts and take home a Git cheat sheet and sample repositories to keep practising.
Day 1 Git on Your Own Machine
Section 1: Lab: Getting to Know Git and Installing the Tools
- What version control is, and how Git, GitHub, Bitbucket and GitLab differ
- Key terms: repository, commit, branch, remote and merge
- Install Git for Windows with Git Bash, or Git on macOS, and basic terminal commands
- Set user.name, user.email and init.defaultBranch to main, and use VS Code as the editor
- A look at the upcoming Git 3.0, such as main as the default branch and SHA-256
Section 2: Lab: Recording Work with init, add and commit
- The working tree, the staging area and the repository
- Start a new project, or add Git to an existing one, with git init
- git status, git add and git commit with good commit messages
- Exclude files and folders with .gitignore, including secret files such as .env
- Rename, move and delete files with git mv and git rm
Section 3: Lab: Reviewing History and Comparing Changes
- git log with --oneline and --graph, and git show
- git diff between the working tree, the staging area and commits
- Compare commits, and limit a comparison to the files you care about
- Visual diffs in VS Code, and finding who changed a line with git blame
- Create shortcuts with Git aliases
Section 4: Lab: Undoing and Fixing Work Safely
- Discard changes with git restore and git restore --staged
- Fix the last commit with git commit --amend
- Undo a commit that has already been shared with git revert
- git reset in soft, mixed and hard modes, and the risks involved
- Set work aside with git stash, and recover commits with git reflog
Section 5: Lab: Branching and Merging
- Create and switch branches with git switch and git switch -c
- Fast-forward merges and using --no-ff
- Three-way merges and how merge conflicts happen
- Resolve conflicts with the VS Code merge editor
- Lab: simulate two kinds of conflict and resolve them until the merge succeeds
Day 2 GitHub, Bitbucket and Teamwork
Section 6: Lab: Getting Started with GitHub and Authentication
- Create a GitHub account, set up the profile and turn on two-factor authentication
- Why passwords no longer work with Git, and the HTTPS and SSH options
- HTTPS with Git Credential Manager or a personal access token
- Create an Ed25519 SSH key and add it to GitHub
- Lab: test the connection with ssh -T and gh auth login
Section 7: Lab: Remote Repositories: clone, push, fetch and pull
- Create a repository on GitHub and link it to a local repository
- git remote, origin and upstream branches
- How git push, git fetch and git pull differ
- Pulling with rebase and resolving conflicts during a pull
- Lab: work on the same repository from two machines
Section 8: Lab: Teamwork with Pull Requests
- GitHub Flow: branch, commit, open a pull request, then merge
- Code review: comments, suggested changes and approvals
- Protect the main branch with branch protection or a ruleset
- Issues, a Markdown README and forking to contribute to open source projects
- Lab: open and review pull requests with a classmate
Section 9: Lab: Bitbucket Cloud
- Workspaces, projects and repositories in Bitbucket Cloud
- Clone over HTTPS with an API token, which replaces app passwords
- Set up an SSH key for Bitbucket
- Commit, push, pull and pull requests in Bitbucket
- When organisations choose Bitbucket, and linking it with Jira
Section 10: Workshop: Good Practice and a Team Project
- Source Control in VS Code, GitHub Desktop, and using AI to draft commit messages that you check before use
- Team conventions: branch names, commit messages and keeping passwords or keys out of repositories
- Workshop: in teams, create a repository, set rules for main and develop on feature branches
- Open and review pull requests, resolve conflicts and merge until the work is complete
- Tag and release the first version, review the problems met and plan next steps
Schedule & training options
For individuals — public rounds
No public rounds are open right now. Join the waiting list and we will contact you first when the next round opens, or ask us on LINE. Or call 02-570-8449 or 088-807-9770
For organisations — in-house / private
- Tailor the content to your team’s tools and projects
- Your dates, at your office or live online
- Quotation with tax ID for procurement
Instructors
Frequently asked questions
What is the difference between Git and GitHub?
Git is version control software installed on your computer. It records the history of your files as commits, lets you create branches and go back to earlier versions, even offline. GitHub and Bitbucket are online services that host Git repositories on a server so a team can push and pull work, and they add collaboration tools such as pull requests, code review and issues.
What is the basic Git workflow?
Start with git init in your project folder, or git clone to copy an existing repository. After editing files, check the state with git status, add the files you want to the staging area with git add, then record them with git commit and a descriptive message. In a team, create a branch with git switch -c before you start, run git pull to bring in the latest work, then git push to a remote such as GitHub and open a pull request.
How do you resolve a merge conflict in Git?
A conflict happens when two branches change the same lines of the same file. Git stops the merge and wraps the clashing sections in <<<<<<<, ======= and >>>>>>> markers. Open the file in the VS Code merge editor, keep or combine the correct code, remove the markers, then git add the file and git commit to finish the merge. The course includes labs that simulate several kinds of conflict so you can practise until it feels routine.
Why can't I push to GitHub or Bitbucket with my password?
GitHub no longer accepts account passwords for Git operations, so you use Git Credential Manager, a personal access token or an SSH key instead. Bitbucket Cloud has retired app passwords in favour of API tokens or SSH keys. In the course you set up both HTTPS and SSH on your own accounts and test the connection until it works.
What will I be able to do after the Git, GitHub and Bitbucket for Beginners course?
You will be able to install and configure Git on Windows or macOS, record, review and safely undo work with the core commands, branch, merge and resolve conflicts, connect to GitHub and Bitbucket over HTTPS or SSH to push and pull work, and collaborate through pull requests and code review. Participants who complete the training receive a Certificate of Completion with its own number, which can be verified online.
Can the Git, GitHub and Bitbucket for Beginners course be run in-house for our team?
Yes. It can be run in-house for your team, with examples adapted to your own work, such as practising on the platform your organisation already uses and agreeing a branching and review workflow that fits how your team operates. You can request a quotation from this page, or contact us on LINE @itgenius or by phone on 02-570-8449.
Related articles
Articles are published in Thai.

