Learn the basics of Git by working through an example scenario.
Have you ever wished you had a time machine for your code? Well, Git is exactly that, and so much more!
If you aren't familiar with Git, it's a version control system that helps you keep track of changes to your code. You can save a snapshot of your project at a particular point in time, then make experimental changes without risking your work, since you can always go back to your snapshot.
GitHub itself is a platform built around Git, letting you save your Git projects to the cloud and work on them with other developers.
While Git can be complicated, it's a powerful and necessary tool for any developer. This article will give you all the tools you need to use Git in your day-to-day workflow.
PrerequisitesTo follow this tutorial, you need to install Visual Studio Code.
Learning Git basics with GitHub DesktopFor standard Git operations, we recommend GitHub Desktop, an app that lets you interact with Git visually instead of through written commands. In this section, we'll learn how to use GitHub Desktop to quickly perform the most common Git operations.
Setting up GitHub DesktopIf this is your first time using GitHub Desktop, you need to install it and connect your GitHub account.
Now, you can take your first steps into Git by creating a repository. Think of a repository as a project folder that tracks changes and stores history. First, we'll create a local repository:
In GitHub Desktop, click Create a New Repository on your Local Drive.
Name the repository learning-git
.
Select Initialize this repository with a README to create a blank README.md
file automatically.
Tip
It's standard practice to include a README.md
file, also known as a README, in your projects. READMEs typically contain information that helps others understand, set up, and run your project.
Click Create repository.
The local repository you just created lives on your computer. Now, let's create a remote repository for the same project, which will be hosted on GitHub. Linking a remote repository makes it easier to collaborate on and back up your work.
Now that you've created a repository, let's talk about branches. Branches are essentially copies of your project where you can test changes without risking the stability of your existing work.
Repositories are automatically created with a main
branch, which you can think of as the stable, primary version of your project. For example, in the repository for a website, the main
branch corresponds to the site that visitors can see.
When you create a new branch, you're creating a safe space to work on a new feature without affecting the primary version. You and your collaborators can use different branches to work on multiple features at the same time.
Let's create a branch to work on changes in our repository:
readme-updates
, then click Create Branch.To save your progress to your branch, you make a commit. A commit is a snapshot you take of your project at a particular point in time. You've actually already made your first commit: when you initialized your project with a README, GitHub Desktop automatically created an initial commit to add the README.md
file.
Whenever you complete a chunk of work that you want to save, you should make a commit. After you do, you can always go back to that point in time, no matter how many changes you make in the future.
In GitHub Desktop, click Open in Visual Studio Code.
In VS Code, paste the following text into README.md
and save your changes:
Hello, World! This is a demo project for learning how to use Git.
Hello, World!
This is a demo project for learning how to use Git.
Back in GitHub Desktop, you'll see the updates you just made to your README. In the bottom left, next to your GitHub profile picture, type "Update README" in the text box. This is called a commit message, and it helps you keep track of the changes you make in each commit.
To make your commit, click Commit to readme-updates.
When you're happy with the changes you've made on a branch, you can publish your branch to the remote repository and create a pull request. Pull requests let you review a set of proposed changes, then merge them from one branch into another. In our case, we'll create a pull request that brings the changes we made in readme-updates
into our original branch, main
.
Click Publish branch to push the readme-updates
branch with your changes to the remote repository.
To review your suggested changes, click Preview Pull Request.
Click Create Pull Request.
In the GitHub window that appears, change your pull request title to "Add a message to the README", then write a brief description of your changes in the comment box.
Click Create pull request.
To bring your changes into the main
branch, at the bottom of the page, click Merge pull request.
Note
When you're working on a project with other developers, it's standard practice for someone else to review your pull request before it's merged.
Near the bottom of the page, click Delete branch. Deleting branches that have been merged into main
helps keep your repository clean and easy to navigate.
Congratulations on merging your first pull request! Now that you've successfully brought your changes into the main
branch, there are a few steps you should take to get ready for your next round of changes:
In GitHub Desktop, if you aren't on the main
branch, select the Current Branch dropdown menu, then click main.
You should almost always switch back to the main
branch before creating a new branch, since new branches are created as copies of the currently selected branch.
To check if any changes have been made to your remote main
branch, click Fetch origin.
Finally, to update your local main
branch with changes to the remote main
branch, click Pull origin.
You now have all of the skills necessary for setting up and using Git on a project!
Diving deeper into Git on the command lineGitHub Desktop is designed to address your day-to-day Git needs. As you grow as a developer, you're likely to run into some unusual situations where you want more control over a Git operation, or you need to use more complex commands. In those instances, you'll need to switch to using written Git commands on the command line.
Setting up your command lineBefore you start working with the command line, you need to set up a few tools.
In GitHub Desktop, press Ctrl+` to open your project on the command line.
If you're using Windows, install Git. For macOS and Linux, Git is installed by default.
Install the GitHub CLI, which lets you perform GitHub-related actions quickly from the command line.
To authenticate to GitHub from the GitHub CLI, run the following command:
Shellgh auth login
gh auth login
Choose to authenticate with GitHub.com, then follow the on-screen prompts.
Install GitHub Copilot in the CLI, a powerful extension for the GitHub CLI that helps you find and understand commands, by running the following command:
Shellgh extension install github/gh-copilot
gh extension install github/gh-copilot
Now that you're set up, let's learn how to find and understand the commands you might need in the future. For example, let's say you saw someone online mention git blame
, but you don't know what it does. Try asking Copilot to explain it with the following command:
gh copilot explain "git blame"
gh copilot explain "git blame"
Copilot will tell us that git blame
provides a detailed history of a file, showing the author and commit that last modified each line in the file. Try it yourself with the following command:
git blame README.md
git blame README.md
This is a great tool, but as you can imagine, the blame for a file can get really long. Let's say you're only interested in the most recent update to a specific line in a file. You can ask Copilot to build you the right command:
Shellgh copilot suggest "Show me the blame for line 1 of README.md"
gh copilot suggest "Show me the blame for line 1 of README.md"
When Copilot asks what kind of command you're looking for, use your arrow keys to choose git command, then press Enter. Copilot will then suggest the following command:
Shellgit blame -L 1,1 README.md
git blame -L 1,1 README.md
Use your arrow keys to choose Execute command, then press Enter. You'll see the author and commit that last modified line 1 of README.md
.
In this article, we covered the basics of Git with GitHub Desktop, learning important terms like:
We also talked about performing more complicated Git operations on the command line. We tried out gh copilot explain
and gh copilot suggest
to understand and find new commands and functionality.
Now, try applying what you've learned to your own work. Add Git to an existing project with GitHub Desktop by pressing Ctrl+O (Windows/Linux) or Command+O (Mac) and experience the benefits of version control yourself!
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4