This short project will demonstrate how to use Git to manage and track your project folders.
By the end of this lesson, you should be able to do the following:
git --version
main
. You can do so by running:git config --global init.defaultBranch main
master
to main
see GitHub’s Renaming Repository.In this project, we’ll walk through the basic Git workflow that you will use in all your projects.
You should have already created a GitHub account in the Setting up Git lesson. If you haven’t done that yet, you can sign up here.
git clone
followed by the URL you copied in the last step. The full command should look similar to git clone git@github.com:USER-NAME/REPOSITORY-NAME.git
.
cd
into the new git_test folder that was downloaded and then enter git remote -v
in your command line. This will display the URL of the repository you created in GitHub, which is the remote for your local copy. You may have also noticed the word origin at the start of the git remote -v
output, which is the name of your remote connection. The name “origin” is both the default and the convention for the remote repository, but it could have just as easily been named “party-parrot” or “dancing-banana”. (Don’t worry about the details of origin for now; it will come up again near the end of this tutorial.)
git_test
folder called “README.md” with the command touch README.md
.
git status
in your terminal. In the output, notice that your README.md file is shown in red, which means that this file is not staged.
git add README.md
. This command adds your README.md file to the staging area in Git. Now, type git status
again. In the output, notice that your file is now shown in green, which means that this file is now in the staging area.
git commit -m "Add README.md"
and then type git status
once more. The output should now say, “nothing to commit, working tree clean”, indicating that your changes have been committed.
git log
and look at the output. You should see an entry for your “Add README.md” commit. You will also see details on the author who made the commit and the date and time for when the commit was made.git_test
folder called hello_world.txt
. In the terminal, type git status
, and notice hello_world.txt
is not staged.
git status
, and notice that README.md is now shown as modified, and not staged or committed. This is because you made a change to it, and it is already a tracked file.
git add README.md
.git status
will output now? README.md will be displayed in green text, while hello_world.txt will still be in red. This means that only README.md has been added to the staging area.
git add .
, where the full stop means to add all files in the current directory that are not staged. Then, type git status
once more, and everything should now be in the staging area. (Note: You can use git add -A
to add ALL unstaged files to the staging area within the repository)
git commit -m "Add hello_world.txt and edit README.md"
. Then, type git status
once again, which will output “nothing to commit”.
git log
. You should now see two entries.Finally, let’s upload your work to the GitHub repository you created at the start of this tutorial.
git push origin main
.
git status
one final time. It should output “nothing to commit, working tree clean”.
The main take away from the past few lessons is how to use Git and GitHub for your projects. You now have this very powerful skill that will help you immensely when we get into the coding projects. You will be able to share your work with others for code reviews and to get help with your code if you’re stuck.
In later Git lessons, we will cover some of the more advanced Git features, such as branches, which will further expand your abilities and make you more productive.
For now, concentrate on using the basics of Git that you’ve learned here with all of your projects from now on. You will soon know each of the basic Git commands from memory!
This section contains helpful links to other content. It isn’t required, so consider it supplemental for if you need to dive deeper into something.
5-6 months
Job Guarantee
1-on-1 Mentorship