Every developer must learn version control. If you wish to get a job in the games industry or software industry, you WILL learn these skills. If you already know them, you're MUCH more likely to get hired.
Every developer must learn version control. If you wish to get a job in the games industry or software industry, you WILL learn these skills. If you already know them, you're MUCH more likely to get hired.
Learn the fundamental operations in the Git version control system. We will start out with the most basic operations, running Git commands from the command line. We begin version controlling basic text files to see how Git works, before moving on to real projects. We create C++ projects in Visual Studio and VS Code, before moving on to Unreal Engine C++ projects using both Unreal Engine 4 and 5.
Learn how to stage changes, commit, branch, merge, and resolve merge conflicts, rebase, cherry pick, stash, and more. Create online remote repositories hosted by GitHub, and fetch and pull from the remotes to your local machine, push from your local repository to the remote, and clone and fork operations. Learn how to submit and approve pull requests, allowing you to contribute to other developer's online projects version controlled by Git.
Learn how to set up Unreal Engine 4 and 5 projects with version control, allowing you to make experimental branches, commit your changes and revert, reset and rebase, and push all your changes to an online repository. Version control large files in your Unreal Engine projects by initializing Git LFS (Large File Storage) and learn how to create proper .gitignore and .gitattributes files so your projects are version controlled smoothly.
Get an edge over your competitors for jobs in the industry. Enroll today.
Learn why you need to understand version control and how Git can make you much more likely to get hired in the games or software industry.
We introduce Version Control, and discuss what it does for projects.
A short quiz on Version Control Systems
Git was created out of the need for a free version control system for the community developing the Linux kernel.
We discuss the operations that are done with Git, how they work, and a common workflow of branching off of the main project, creating a new feature, then merging that feature back in.
A short quiz on some of the operations used in Git
We go through the steps to install git on the Windows, Mac, and Linux operating systems.
We discuss some basic terminal commands that work on the Windows, Mac, and Linux operating systems. Download a cheat sheet in the resources for this video, as well as the PDF for the practice exercise!
A short quiz on the commands you can run from the terminal
We initialize our very first Git repository! We also see that this creates a new folder called .git, which holds all the files and folders associated with the new repository.
A short quiz on what you've learned while creating your first repository
We discuss Git's config files and how they contain configuration settings for Git. We talk about local, global and system-wide versions of these, and we set our global user name and email for Git.
A short quiz about Git's config files
We learn how Git adds files to be tracked, and how tracked changes are added to the staging area with git add. We can undo unstaged files with git restore.
A short quiz on what you've learned about tracking files and the staging area (index).
We learn how to make our first commit! This involves typing out a commit message in Git's message editor.
A short quiz on making commits.
We learn what these mysterious commit IDs are, how they're generated, and how Git uses them to identify and compare objects. We learn about Git's object store, which contains four different types of objects in a Git repository.
A short quiz on commit IDs and Git's object store
We learn how to remove a file from the Index to unstage its changes, but keep them in the working directory. We also learn how to amend the previous commit by adding changes to it and optionally changing its commit message.
A short quiz on unstaging and amending the previous commit.
We learn about one of the most fundamental aspects of a Git repository: the .gitignore. We create a .gitignore and learn how to designate certain files and folders to be ignored.
We learn some useful shortcuts to make our lives easier while using Git, including staging all changes, stage all but new files, and committing with a single command.
A quiz on the useful shortcuts you've learned.
We learn how to revert commits, undoing them and keeping the record as a new commit. We then learn how to discard the latest n commits entirely with git reset HEAD~.
We learn how branches work, how to create them, how to switch between them, and how Git changes our working directory based on the branch we're on.
A quiz on branching.
We learn how to merge branches, as well as delete branches once we're done with them.
Testing your understanding of Merging.
We learn about the rebase and how it can make our commit history cleaner.
Testing your comprehension of rebasing.
We learn how merge conflicts are created and how to resolve them.
Testing your understanding of merge conflicts
We learn about remote repositories and how they work regarding commits on our local machine.
We create a new GitHub account and a new remote repository.
We learn about the SSH and HTTPS protocols for sending information to and from a remote repository.
We learn how remote tracking branches are created to inform us of the current status of the remote origin.
We learn more operations on branches, including adding more branches to the remote, deleting upstream branches, and the force push.
Testing your understanding about online repositories
We learn how to change the text editor for Git, and even use the Git bash inside VS Code.
We learn how to squash commits and reorder them in the interactive rebase.
We learn how to stash changes in the working directory and view, retrieve, and drop those stashed changes.
We learn how to pull in a specific commit from another branch without merging or rebasing the whole branch.
A quiz on manipulating the history of your branches
We create an actual C++ project in Visual Studio and set it up to track a remote repo on GitHub.
We learn the common Git operations in Visual Studio including branching, merging, pushing, and pulling to and from the origin.
We use Visual Studio to resolve merge conflicts, cherry pick, and stash changes!
We connect a VS Code project to source control and set it to track a remote branch.
We set up an Unreal Engine project to be version controlled and create an online remote repo for it!
We perform common Git operations in our Unreal Engine project, including branching, merging, and pushing/pulling.
We set up an Unreal Engine 5 project to be version controlled and linked to an online remote repository!
We perform common Git operations with our Unreal Engine 5 project, including branching, merging, pushing and pulling.
We learn what Pull Requests are, how to make them, and challenge ourselves to submit one to one of the repos for this course!
We learn how to install and use the GitHub Desktop app, and see just how easy it is because we already know how all the git operations work!
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.